VB数据库操作控件Data详细使用说明

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在控件箱中的Data控件是VB用于数据库操作的控件,双击Data控件或单击后在体上拖动出控件的大小,都可以看到Data控件的外观

1.Data控件的常用属性

(1)Connect属性

Connect属性用来指定该数据控件所要链接的数据库格式,默认值为Access,其他还包括dBASE、FoxPro、Excel等。

(2)DatabaseName属性

DatabaseName属性是用于确定数据控件使用的数据库的完整路径。如果链接的Access 数据库,就可单击按钮定位.mdb文件。例如,选择”C:\dbbook.mdb”文件。

(3)RecordSource属性

RecordSource属性用于指定数据控件所链接的记录来源,可以是数据表名,也可以是查询名。在属性窗口中单击下拉箭头在列表中选出数据库中的记录来源。例如,选择客户信息表”Customers”。

(4)RecordsetType属性

RecordsetType属性用于指定数据控件存放记录的类型,包含表类型记录集、动态集类型记录集和快照类型记录集,默认为动态集类型。

表类型记录集(Table):包含实际表中所有记录,这种类型可对记录进行添加、删除、修改、查询等操作,直接更新数据。

动态集类型记录集(Dynaset):可以包含来自于一个或多个表中记录的集合,即能从多个表中组合数据,也可只包含所选择的字段。这种类型可以加快运行的速度,但不能自动更新数据。

快照类型记录集(Snapshot):与动态集类型记录集相似,但这种类型的记录集只能读不能更改数据。

(5)BOFAction和EOFAction属性

在运行时用户通过单击数据控件的指针按钮可移动记录到开始或结尾,BOFAction属性是指当用户移动到开始时程序将执行的操作,EOFAction指当用户移动到结尾时程序将执行的操作。

EOFAcfion值为0(MoveFirst)是将第一笔记录作为当前记录,为1(BOF);9记录的开头。

EOFAction值为0(MoveLast)是将最后一笔记录作为当前记录,为1(EOF)指记录的末尾,为2(AddNew)移动到记录结尾并自动添加一记录。

2.Data控件常用的方法

(1)AddNew方法

AddNew用于添加一个新记录,新记录的每个字段如果有默认值将以默认值表示,如果没有则为空白。

例如,给Data1的记录集添加新记录:

Data1.Recordset.AddNew

(2)Delete方法

Delete用于删除当前记录的内容,在删除后应将当前记录移到下一个记录。

(3)Edit方法

Edit用于对可更新的当前记录进行编辑修改。

(4)Find方法群组

Find方法群组是用于查找记录,包含FindFirst、FindLast、FindNext和FindPreviou方法,这4种方法查找的起点不同。

Find方法查找起点查找方向。

FindFirst 第一个记录向后查找。

FindLast 最后一个记录向前查找。

FindNext 当前记录向后查找。

FindRrevious 当前记录向前查找

例如,查找”客户号”字段为”10002”的记录:

Datal.Recordset.FindFirst″客户号=′10002”,

If Datal.Recordset.NoMatchThen ′如果没找到

MsgBox″找不到10002号客户″

End If

通常当查找不到符合条件的记录时,需要显示信息提示用户,因此使用NoMatch属性,当使用Find或Seek方法找不到相符的记录时,NoMatch属性为True。

(5)Move方法群组

Move方法群组是用于移动记录,包含MoveFirst、MoveLast、MoveNext和MovePrevious 方法,这四种方法分别是移到第一笔记录、移到最后一笔记录、移到下一笔记录和移到前一笔记录。

注意:

当在最后一个记录时,如果使用了MoveNext方法时EOF的值会变为True,如果再使用MoveNext方法就会出错。对于MovePrevious方法如果前移,结果也是同样。

(6)Refresh方法

如果DatabaseName、ReadOnly、Exclusive或Connect属性的设置值发生改变,可以使用Refresh方法打开或重新打开数据库,用Refresh方法可以更新数据控件的集合内容。

(7)Seek方法

Seek方法适用于数据表类型(Table)记录集,通过一个已被设置为索引(Index)的字段,查找符合条件的记录,并使该记录为当前记录。

语法:

记录集.Seek比较式,key1,key2,...,key13

例如,当索引为”客户号”字段时,查找客户号为”10005”的记录:

Data1.Recordset.Seek″:″,″10005″

(8)Update方法

Update方法用于将修改的记录内容保存到数据库中。

(9)UpdateControls方法

UpdateControls方法可以从数据控件的记录集中再取回原先的记录内容,即恢复原先值。当在与数据控件链接的控件中修改了记录内容,可以用UpdateControls方法使这些控件显示恢复原来的值。

3.Data控件常用的事件

(1)Reposition事件

Reposition事件是当某一个记录成为当前记录之后触发。通常利用该事件对当前记录的数据内容进行计算,触发该事件有以下几种原因:

单击数据控件的某个按钮,进行记录的移动。

使用Move方法群组。

使用Find方法群组。

其他可改变当前记录的属性或方法。

(2)Validate事件

Validate事件与Reposition事件不同,是当某一记录成为当前记录之前,或是在Update、Delete、Unload或Close操作之前触发。

事件的定义如下:

语法:

Private Sub Data1_Validate (action As Integer ,save As Integer)

其中:

action:用来指示引发这种事件的操作。

Save:用来指定被链接的数据是否修改了。

例如,在Validate事件触发时确定记录内容是否修改,如果不修改则恢复:

Private Sub Data1_Validate(Action As Integer ,Save As Integer)

Dim mag

if Save=True Then

相关文档
最新文档