当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

华东理工大学:《VB程序设计》课程教学资源(学习指导)第8章 VB数据库应用

资源类别:文库,文档格式:PDF,文档页数:7,文件大小:218.84KB,团购合买
点击下载完整版文档(PDF)

第8章VB数据库应用 8.1基本要求 1.掌握关系型数据库的基本概念及Access数据库的建立: 2.学握Data控件和Access数据库的连接: 3.掌握数据绑定控件和数据控件的连接: 4堂探ADODC控件的使用, 5.了解VB中使用结构化查询语言SQL的方法 82知识点 1.关系型数据库中一些基本概念 (I)记录(Record)):每一行数据为一条记录。 (2)字段(Field):每一列为一个字段. (3)数据表Tab):由记录的集合组成的二维表格称为数据表 (④)数据库(Database多个相互关联的数据表的集合。 ()主键 个字段或多个字段的组合,唯一地标识了表中的一行。它不允许有空值 主键是表中所保存的每一条记录的唯一标识。 (6)索引:通过索引可以快速访问数据库中的指定信息。在数据库设计器中可以创建三 种类型的索引,分别是唯一素引、主健索引和簇索引。通常在数据库表中如果为表定义了 个主健将自动地创建主键索引,主键索引是唯一索引的特殊类型。主键索引要求主键值是唯 一的。 ()关系:一个数据库可以由多张表组成,根据不同情况,表与表之间可以建立不同类 型的关系。表之间的关系有一对一关系,一对多关系和多对多关系。 2.关系数据库模型 关系数据库模型的逻辑结构是一张二维表,和我们在日常生活中使用的表格在直观上是 一致的。一个关系对应于一张二维表。表中的一列称为一个“字段”。表中的一行称为一个 “记录”。每个表都应有一个主关键字,主关键字可以是表的一个字段或字段的组合,且对 表中的每一行都唯一。 3.SQL查询语言 (I)用Selecti语句可以从数据库中查询符合条件的记录。 语法格式: SELECTFROMWHEREGROUP BY HAVINGORDER BY字段[ASCIDESC]] 其中 字段表部分:包含了查询结果要显示的字段清单,字段之间有逗号分隔。要选择表中所 有字段,可用“*”代替。 FROM子句:用于指定一个或多个表。 WHERE子句:用于限制记录的选择 GROUP BY和HAVING子句:用于分组和分组过滤处理。它能把在指定字段列表中有 相同值的记录合并成一条记录。 ORDER BY子句:决定了查找出来的记录的排列顺序。 (2)用Insert语句能插入记录。 透法格式, NSERT INTO表名(列名1

                                !"#$  %&'       () *+,-+.()'   /0  *+1-+2/0'   3! "  4() 5678 9:3;?@ 3 56'  BC +2/0D=2/0 76EF+GHI3 +,'JKLMNOPE BCQ3RST *+.() F+HI' # UV WXUVYZ[\]^ _`a'bcdeYZfg hi UVEjkQF+UVlBCUVmUV'Wnb3op-3q+ 2BCrstGfBCUVEBCUVQF+UV uvi'BCUVwxBCPQF + ' $  +2YZ4=y378EzK{|}E3~3€YZK{i  '3€ N++E+==='  ‚ ƒ„Q+y9:3E…†b‡nˆ‰ 3;bŠ‹ŒQ + '+2Ž+y9:3'3 +1{P ()6³8+.()'  %. «š´!µ¶· () ¸1¹º' • /5 #±»¼()' #&;™š /0%!/0! 3›11› 6½3

VALUES(值1,值2,…,值n) WHERE条件 (3)用Update语句能更新记录的字段内容 语法格式。 UPDATE表名 SET字段1三表达式1.字段2三表达式2,… WHERE条件 (4)用Delete语句能刑除表中的记录】 语法格式 DELETE FROM表名WHERE条件 4.Data控件 Data控件通过一个称为记录集(Recordset)的对象来访问数据库中的数据. 一个记录 集是数据库中的一组记录,一个记录集可以来自基本表或SQL命令执行的结果。 访问数据控件Daal的记录集的语法如下: 数据控件对象Recordset Data控件连接设置: (I)设置Connect属性:指定Data控件所要连接的数据库格式,默认值为Access (2)设置DatabaseName属性:设置Data控件所连接的数据源的名称及位置。例如, 连接到“D supermarket.mdb”。 (3)设置R 属性:指定数据控件所连接的记录来源,可以来自数据库中的 某张数据表,也可以是查询的结果或者来自一个有返回记录的$QL语句。如,选择数据库 supermarket.mdb中的类别信息表class。 (4)设置RecordsetType属性:指定数据控件存放记录的类型,包含表类型记录集 (Table)、动态集类型记录集(Dynaset)和快照类型记录集(Snapshot),默认值为动态集 类型。 5.Data控件及其记录集的常用方法 (I)Refersh方法:更新Data控件所连接的数据。 (2)UpdateControls方法:从一个Data控件的Recordset对象中取得当前记录,并且在 绑定到某个控件中显示。 (3)JpdateRecord方法:保存被连接的控件的当前值。UpdateRecord方法与执行Edit 方法编辑一个字段并随后执行Update方法产生同样效果,除非无事件发生。 ew方法: 向可更新的记录集Recordset对象中添 一条新记录。新记录的每 个字段如果有默认值将以默认值表示,如果没有则为空白。 (5)Update方法:调用AddNew方法之后,或现有记录的任何字段值发生更改之后, 调用Update方法可以把更改保存到数据库中。 (6)Delete方法:删除当前记录的内容,在删除后应将当前记录移到下一个记录。 (7)Edt方法 对可更新的当前记录进行编辑修改 (8)Find方法:用于查找记录,包含FindFirst、FindLast、FindNext和FindPreviou方 法。 (9)Move方法:移动Recordset对象中当前记录的位置,包含MoveFirst、MoveLast、 MoveNext和MovePrevious方法,这四种方法分别是移到第一条记录、移到最后一条记录、 移到下一条记录和移到前一条记录。当在最后一个记录时,如果使用了MoveNext方法时 EOF的值会变为True,如果再使用MoveNext方法就会出错。对于MovePrevious方法如 前移,结果也是同样

,%P EP E½6P 5 )*%% . • ,7  #±¾¿() /0ÀÁ #&;™š ,- !% 3› %! /0 Â3Ù E/0 Â3Ù E½ )*%% . •    #±ÄÅ3 ()' #&;™š %%!%( 3› )*%% .    WX+2= %&š¾¿ R ' •,7 5   %&š+2   ÆÜÝÞß()E³b ÓÔ2 ¡' •,7  %&šSTà  ÞßP',7  %&~É, % %&á„+2/0³âãÉ, ,7  %&äˆ{åæpEÅçèéêˆ' •0? %&šëY¾¿ ()5  Æìí+.¿()'¿() * 2/0opNÎÏPrZÎÏP3¡EopîNï-Oð' •,7  %&šñ 0? %&ãEDòN() óô/0PꈾõãE ñ ,7  %&YZ²¾õSTÓ' #•    %&šÄÅÞß() ÀÁEbÄÅãŽrÞß()öÓÊ+2()' $•% %&šY¾¿ Þß()÷,á„øõ' •5 %&š!µ()EžŸ 5 l5  l50@  5-A: % &' B•(A %&šöt  ÆÞß() ÑËEžŸ (A l(A  l (A0@  (A-A: %&Eùúh%&jkQöÓû+.()löÓüã+.()l öÓÊ+.()öÓß+.()'Þbüã+2()ýEop (A0@ %&ý % Pþ- !:Eop (A0@ %&þ¶' (A-A: %&op ßöEpÕQ{å'

(10)Seek方法:用于已经建索引的表类型(Table)记录集,通过一个已被设置为索 引(dcx)的字段,查找符合条件的记录,并使该记录为当前记录。 6.Data控件的常用事件 (1)Rep son事件:当某一个记录成为当前记录之后触发。通常利用该事件对当前 记录的数据内容进行计算,使用Move方法、Find方法或单击Data控件的移动按钮都可以 触发该事件。 (2)Validate事件:当某一记录成为当前记录之前,或是在Update、Delete、.Unload 或Close操作之前触发。 7.数据绑定控件 通常把具有数据源属性(DataSource)的控件称为数据绑定控件.Picture、Label、TextBox CheckBox、Image、OLE、ListBox和ComboBox都可作为数据绑定控件,另外DataList, DataCombo、DataGrid和MSHFlexGrid控件也是常用的数据绑定控件。它们都有Datasource 属性,通过该属性可以和Data控件所连接的记录集Recordset的某个字段绑定并显示该字段 的内容。与Data控件绑定的相关属性 (1)DataSc 从下拉列表中选择想要绑定的控件名称,如选择Daal (2)DataField属性:从下拉列表中选择要显示的字段名称。 &.ADODC控件 ADODC控件可利用Microsoft ActiveX Data Objects数据对象(ADO)快速建立数据绑 定控件和数据提供者之间的连接。数据提供者可以是任何符合OLE DB规范的数据源。 ADODC控件和D相控件在概念上很相似,都可可以将一个数据原连接到一个数据绑定控件 也都有相同的外观按钮。但是,相比较来说ADODC更加灵活,适应性更广 9.ADODC控件的常用属性 (I)ConnectionString属性:是一个连接字符串,用米连接到数据源。可以是OLE DB 文件(.UDL)、ODBC数据源(.DSN)或连接字符串。 (2)RecordSource屈性:返回或设置一个记录集的查询,用于决定从数据库中查询什 么信息。 (3)UserName属性:用户名称,当数据库受密码保护时,需要指定该属性。这个属性 也可在设置属性时设置 (4)Password属性:设置ADO Recordset对象创建过程中所使用的口令,当访问一个 受保护的数据库时是必须的。 10.AD0对象模型 Connection Command Parameters Parameter Recordset Fields Field Errors Error

C•; %&šUV 3i! " •()5EWX+2àcË-U V/5@• /0E!µ6. ()E³()-Þß()'     •7 5 éšÞÔ+2()8-Þß()ãê'Wn éÞß () ÀÁ÷,d E (A %&l5 %&D£  öt ’YZ êé' •   éšÞÔ+()8-Þß()ßEDQb ,7 l   l,5   D   ßê'  !" Wn²NÐÌÍ : ÌÍ • : Ì͚Ê13§¨w ›  AE "F  Æ •[\ Ö€ 'ÖYZQóô6 %   Ð'     b Œ>E’YZr+2ÐÓ+2E ՒN>{ ‹ 'QE>·    ¾í‰E ŽÍ¾!'    #$ •55 5 5D Ì͚Q+2/"E·ÓÐ'YZQ %  #, •l  Ð 0•D/"' •: Ì͚×ØDcË+2()5 !"E´!"$ %`a' •,0 8 Ì͚&›<EÞ'()S*ýE+w_ÌÍ'ù2ÌÍ ÕYbcË 55 5 5D ÌÍýcË' •- ? Ì͚cË   ÆfX,R -ÈEÞ]^+2 'S* ýQ./ '   %&    ! "  ! #$! #$ "  %  ! % 

Connection对象是ADO对象模型中最重要的一个对象,通过该对象建立和数据库的连 接,可以说它是ADO的源头,只有创建了Connection对象之后,才可以创建和使用上图中 的Command对象和Recordst对象。 (1)Conne 在ADO对象模型中,通常是先创建Connection对象。创建Connection对象的代码如下: Dim en As ADODB.Connection ‘定义一个Connection类别的对象变量 Set cn new adodb connection ·创建一个对象实例cn 也可以将这两句代码合成为一句,下面的效果等价于执行前面的两条语句。 Dim cnAs N ADODB.Connectior 然后指定该对象所连接的数据源。设置Connection对象连接数据源的代码如下 CnnStr="Provider=Microsoft.Jet.Oledb.3.51;"&"Data Source=D:supermarket.mdb," (2)Recordset ecordset对象是一个记录集,可以来自基本表或SOL命今执行的结果。和前面在Dat相 控件以及ADODC控件中所用到Recordset是相同性质的。先创建Recordset对象,然后打 开数据表: Dim rs As New ADODB Recordset rs cursorlocation=aduserclient rs.Open"provider".cn,adOpenKeyset,adLockPessimistic (3)Co and对 Command对象主要是用来执行SQL语句。 (4)Field对象 Field对象代表各字段的类型和值。每个Field对象对应于Recordset中的一列。Recordset 对象含有由Field对象组成的Fields集合。使用Field对象的Value属性可设置或返回当前记 录的数据。读取字段值的常用语法格式如下: 方法一:Recordset.Fields(0.Val 存取第个字段的内容 方法二:Recordset,Fields(字段名称).Value:根据字段名称来存取字段的内容 方法三:Recordset![字段名称 (5)Em0r对 用来检测和判断在数据库操作中出现的错误,比如连接失败等。在VB中,出现特定 ADO的错误将引发On Erro 事件,并且该错误将出现在Eror对象中。 11.数据窗体向导 通过VB的数据窗体向导可以方便简单地生成包含有各个被绑定控件和事件过程的窗 体,管理所绑定的数据库中的信息。“数据窗体向导”只可以和ADO Data控件一起使用。 12.数据环境设计器 数据环境设计器是访问数据库的一个交互环境和图形化接口。在设计时,可以拖动数据 环境中的对象到窗体或报表中方便地创建数据绑定的控件:也可以对数据环境中的 Connection和Command对象编写代码响应AD0事件 l3.数据报表Data Report Data Report是VB提供的一个简单实用的报表生成器。在进行数据库的处理时,常常要 用到报表,通过写程序来实现是非常麻烦的,通过Data Report,可以进行快速简单的报表 制作 8.3疑难解析 1.数据编辑后没有写入数据库

55 5 ÆQ   Æ‚ü0w +2ÆEWXÆ  EYZJQ   Ð1E2Nf 55 5 ÆãE3YZfŒ4 88 5 Æ  Æ' •55 5 Æ b   Æ‚EWnQ5f 55 5 Æ'f 55 5 Æ ©)oʚ 85  55 5     6q+2 55 5 ik Æ7  5G0?  55 5   6f+2Æ8Ò 5 ÕYZrù9©)68-+EÊ: æp; I  " JHKH :G 9:78 ; 8"JH • Æ   ÆQ+2()5EYZ·s 3D  ÇÈÉ, p'ß:b Z    RÓ  Q>{Í> '5f  ÆE=ã? @3š 80?   : 5G , 5 75L7AM656 75N< 6 ;-8  •88 5 Æ 88 5 ÆBwQ·É,  #' •  Æ   Æ©3A/0 iP'*2   ÆŽ   +1' ÆŸN4   Æ78   56'   Æ  : ÌÍYcËD×ØÞß( ) 'BÜ/0P n#&;™oʚ %&+š   : TÜû  2/0 ÀÁ' %&9š  /0›< :šz/0›<·TÜ/0 ÀÁ' %&gš C1/0›<3 •% Æ ·DEFGb¶ò HEoIJ;'b  E¶òu   HrVê 5% éE³Hr¶òb % Æ'  '()* WX  KLëMYZ%NO£Gˆ8žŸNA2àéX, K LEP°R  `a'KLëM‘2YZ   +Q'  +,-./ RScdeQ]^ +2T?RS4U -'bcdýEYZVt RS ÆÓKLDW3%NGf ÕYZRS 55 5  88 5 ÆáX©)YŽ   é'  01 &  7 Q   +2O£8 W3ˆ8e'b÷, ¯°ýEnnw ÓW3EWXX,º·8òQçnZ[ EWX  7 EYZ÷,[\O£ W3 ­'     2345678

直接由数据控件链接的数据库,当数据编辑后,必须单击数据控件对象上的按钮移动记 录,所作的修改才有效。另外,为使用户可对数据库进行修,必须将数据控件的ReadOnly 设置为False 2.绑定控件无法获取记录集内的数据 数据控件的链接设置必须先于绑定控件的DataSource和DataField属性的设置。否则绑 定控件无法获取记录集内的数据。OLE DB类型的绑定控件的DataSource只能使用ADO数 据控件。 3.RecordSource属性重新设置后记录集无变化 数据控件的RecordSource属性重新设置后,必须用Refresh方法激活这些变化。否则数 据控件链接的数据源还是原来的记录集 4.调用Update方法失败 调用Update方法写入记录前,必须保证已调用了AddNew或Edit方法,否则程序在执 行时要产生3020实时错误:“在不使用AddN©w或Edit的情况下,更新或取消更新”。 5.在添加了新记录后显示屏不显示新记录 在调用AddNew方法后,调用了Undate方法写入记录后,记录指针自动返回到添加新 必要注意到这一点。 6。删除记录后被别记录还显示在屏幕上 删除记录后,显示屏不自动刷新,屏幕上显示的内容还是被删除的那一条记录,要刷新 显示屏必须移动记录指针。故在使用Delete方法后,再用一条Move语句移动记录指针。 7.Find方法或Seek方法无法执行 的记录集上查找 要使用EOF来判新是否找到所要的记录, 8.DAO或ADO对象无法使用 要想在程序中使用DAO或ADO对象,必须先为当前工程引用DAO或ADO对象的数 据库引擎。否则程序在执行时要产生“用户定义类型未定义”等编译错误。 9.S0L语句出错 使用S0L词句时,必须保证各关字与前后内容之间用空格分界,特别是当SOL语句 的内容较长时,为了便于阅读程序,将语句分割成儿部分通过字符拼接构成一条完整的SQ 语句时,更要注意空格的使用。 10.使用Select语句对多表操作出现字段找不到的错误 在多表操作时,当表中的字段名不相同时,可直接使用字段名。当两个表中具有相同的 字段名时,可以从任意一个表中选取,但必须在字段名前加上表名前缀,表名与字段名之间 的链接必须用西方的“”,如果字段名内含有空格,字段名必须用方括号[)括起。 1山.使用AD0对象出现无记录源可选择的错误 AD0对象通过SQL语句选择数据源时,CommandType属性必须指定记录源类型为 adCmdUnknown或adCmdText。adCmdText表示命令文本,当设置为adCmdUnknown时, 不能明确地知道命令的类型,提供者先尝试把命令文本作为普通的文本来执行,然后作为

Š4\ EÞá„ãE./£ ÆŒ öt( )ER øõ3Næ'E-&Y÷,øõE./r  5 -?49@A  : ÌÍ0¿cËãE./ >= %&_‰ù` ']ï \ ÐaQb· ()5'  B (& CD ñ ,7  %&X¼()ßE./Scñ 0? D % %&E]ï,ºbÉ ,ýwäˆ C C 8ýHšbK 0? D % |}ÊE¾¿DÜd¾¿‘'  EFGH>4IJKLIJ> bñ 0? %&ãEñ ,7  %&X¼()ãE()_est×ØÓìí¿ ()ß ÑˌERZKLŒK ¡¿()'-fEYbñ ,7  %&ãE (A  %&r()_egöt¿()Œ'op,ºw ()_eÑË­,ºÉ,hýEi .wjkÓù+l'  MN4OMPIJEKQR ÄÅ()ãE ¡mKstn¿EmoŒ ¡ ÀÁaQàÄÅ p+.()Ewn¿  ¡m./öt()_e'qb    %&ãE+. (A #öt()_e' # S ) 9TU 5 %&2±b {ýEYŠ/0›'Þ923N>{ /0›ýEYZók+23§ÜE./b/0›ßíŒ3›ßE3›~/0›€ \./€% ‘Eop/0›ÀŸNO;E/0›./%¥13Q'  V   %&X]9cdefYb   ÆWX  #§¨ÐýE88 5!<7 ÌÍ./_()Ði- 8,5;5?5 D 8!@ ' 8!@ 3¡ÇÈ# EÞcË- 8,5;5?5 ýE K±‚ƒG„…ÇÈ iEÖ5†‡²ÇÈ# -ˆW # ·É,E=ã-+

个存储过程,最后作为一个基表名。只有在所有三种尝试都失败的情况下才出现一个错误。 12。在使用合计函数对记录进行操作时出错 在Select语句使用合计函数,合计函数内使用的表达式必须包含在Select输出子句中。 13.如何向MSF1 exGrid或SHFlexGrid控件加入数据输入功能 MSFlexGrid或MSHFlexGrid控件以表格形式显示数据,而不能直接用于数据输入。如 果要向控件加入数据输入能力,可以通过文本框和代码来实现。当单元格被改变时,与之有 关的两个事件是EnterCell和LeaveCell,在EnterCell事件中将MSFlexGrid或MSHFlexGrid 控件当前单元格的数据赋予文本框,并将焦点移动到文本框控件,在L©aveCell事件中将文 本框的数据赋予MSFlexGrid或MSHFlexGrid控件当前单元格。为了造成更直观的效果,可 将文本框重叠在当前单元格上。事件的代码如下: Private Sub MSFlexGrid1_EnterCellO Textl Left=MSFlexGridl.Left+MSFlexGridl.CellLeft Text1.Top=MSFlexGrid1.Top+MSFlexGrid1.CellTop Textl Width MSFlexGrid1 CellWidth Text1.Tex t=MSE exGrid1.Tex 将当前单元格的数据赋予文本框 Text1.SetFocus End Sub Private Sub MSFlexGrid1 LeaveCellO) MSFlexGrid1.Text=Text1.Text End Suh 8.4典型例题 例8-1给定下面某单位人事档案表,使用可视化数据管理器建立“人事档案.mdb”数据 库。该库包含一个表,命名为“人事档案”,把人事档案表中数据存放到该表中,如下表所 编写 姓名 性别年龄职称专业 学历 T001 张发达 男 39教授 物理 域士 T002 周新宇 28 讲师 计算机 博士 T00 李晓 教 计算机 博 T005 唐丽娲女 33副教授化学 博士 使用D0数据访问控件编写一个简单人事档案管理程序。要求该程序具有查询、修改、 添加、更新和刑除记录功能。 2.使用D0数据控件编写一个程序,浏览由上题所建立的“人事档案”表中的记录 要求该程序具有显示首记录,下一个记录,上一个记录和末记录的功能

2T‰X,Eüã-+2 3›'2NbRNgh†‡’IJ |}Ê3¶ò+2H'  EVg.h%iU[\jXY b   #6dŠE6dŠÀ 3Ù./žŸb   ‹¶«'  kl) * #$+,  S * -#$+,  G8m8no ( @+ D (* @+ Z3;U™ ¡EŒK±Š‹¼'o pwëí¼‹¼±EYZWX# Ž©)·8ò'Þ£;àõýE~N 92éQ %5    A 'b %5  ér ( @+ D (* @+ Þߣ; ‘# ŽE³r’lötÓ# ŽEb  A ér# Ž ‘ ( @+ D (* @+ Þߣ;'-8¾Š‹ æpEY r# Ž0bÞߣ;Œ'é ©)oʚ -A :"( @+O%5     !@ > G( @+> P( @+ >   !@ !7G( @+!7P( @+ !7   !@ ) =G( @+ ) =   !@ *D= G( @+ *D=   !@ !@ G( @+!@ QrÞߣ; ‘# Ž   !@  : %5:" -A :"( @+O A    ( @+!@ G!@ !@ %5:"   Ò R •Ê:Ô£Ñé3EY™ P°eéš›œ‘ 'žŸ+23EǛ-é‘E²é3TÙÓ3EoÊ3R ¡'              !"  # $% &'(   )* +  , - . / 012  3  &'(  3 456 +  7 8   žŸ  ]^áX+2O£éP°,º'wx,ºN!"løõl ìíl¾¿ÄÅ()¡±' ¢  žŸ  áX+2,ºE£¤4Œ¥R é‘3 ()' wx,ºN ¡¦()EÊ+2()EŒ+2()§() ¡±'

8.5练习与思考 本题要求学生使用Visual Basic6.0编制一个程序,达到访问数据库的功能。程序界面如 下图 其中数据库采用练习文件夹下的 ales.mdb ”文件 sales.mdb”库中有 购”,程序要求能够打开和修改表“采购”中的记录。可以采用Visual Basic6.0中的数据库 向导功能。 习题要求: 请在统习文件夹下创建一个新的工程文件b1b 新建窗体文件bl.m,标题为 可以采用数据库窗体向导 别除其他无用的窗体文件: 建立连接数据库的窗体界面,使用ADO连接到ODBC“EXAMDB”数据源: 程序能够正常运行,并且打开后界面与图81显示相同。 采购 订单号 19的74 97415 已收情 已付款 Delete Refesh Cloo 图81窗体界面

  ¥wx¨ˆ :  #C á­+2,ºEÃÓ]^ ¡±',ºw:o Ê4Eœ©ª«#¬Ê  8"‘#E 8"‘N+y3© ­‘E,ºwx±®?@øõ3©­‘ ()'YZ© :  #C   ëM¡±' pqrst ¯bª«#¬Êf+2¿ r,# A"A"7 ¿KL# A">8EH¥-©­‘EYZ©KLëM ÄŜ°è KL#  KLw:E   Ó   %E( ‘Ð ,º±®±n²,E³?@ãw:~4 R  ¡>{' 4 R KLw:

点击下载完整版文档(PDF)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
已到末页,全文结束
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有