VB程序设计教程集 (2).ppt
《VB程序设计教程集 (2).ppt》由会员分享,可在线阅读,更多相关《VB程序设计教程集 (2).ppt(54页珍藏版)》请在三一办公上搜索。
1、12.1数据库管理器,12.2数据控件的使用,12.3 SQL语言,12.4 ADO数据控件,第12章Visual Basic 6.0与数据库,退出,12.1数据库管理器,图12-1可视数据库管理器,利用可视化数据管理器可创建多种类型的数据库。创建步骤如下:单击“文件”菜单下的“新建”菜单项,出现数据库类型选择菜单。单击数据库类型菜单中的Microsoft Access将出现版本子菜单,在版本菜单中选择要创建的数据库版本。,图12-2 创建数据库的菜单选项,2)选择要创建的数据库类型及版本后,出现新建数据库对话框,在此对话框中,输入要创建的数据库名“student.mdb”。3)此时,在可视化
2、数据库管理器窗口中出现“数据库窗口”和“SQL语句”窗口,如图12-3所示。“数据库窗口”以树型结构显示数据库中的所有对象,单击鼠标右键激活快捷菜单,执行“新建表”、“刷新列表“等菜单项。,图12-3 数据库窗口和SQL窗口,4)在“数据库窗口”中单击鼠标右键,出现快捷菜单,执行“新建表”菜单项便可为数据库添加一个新表。5)屏幕出现如图12-4所示的“表结构”对话框。在这个对话框中,可输入新表的名称,并添加字段,也可从表中删除字段,还可以添加或删除作为索引的字段。,图12-4“表结构”对话框,表12-1字段属性列表,图12-5 添加字段”对话框,6)添加字段完成后,单击“添加字段”对话框中的“
3、关闭”按钮。回到如图12-6所示的“表结构”对话框,单击“添加索引”按钮,出现“添加索引”对话框,如图12-7所示,选择索引字段为“学号”,输入索引字段名为“ID”,单击“确定”按钮。,图12-6 添加字段后的“表结构”对话框,图12-7 添加索引对话框,7)完成上述步骤后,单击“生成表”按钮,就会在“数据库窗口”中出现“学生情况”表,如图12-8所示。,图12-8 生成新表后的“数据库窗口”,8)当一张表建立后,可以再建立另一张表。如果要在已经存在的数据库文件内增加一张新表,只需要在数据管理器文件菜单中选择打开数据库命令,其余操作过程与建立数据表的操作相同。当表建好后,用鼠标左键双击出现在数
4、据库窗口中的”学生情况”表名,打开图12-9所示的表格输入窗,选择对应命令进行添加、编辑、增删记录等操作。,图12-9 表格输入窗,12.2数据控件的使用,12.2.1 数据控件常用属性,12.2.2数据绑定控件常用属性,返回,退出,12.2.4数据控件上的对象,12.2.6数据控件的事件,12.2.7数据库记录的增删改操作,12.2.3使用数据控件操作数据库中的数据,12.2.5数据控件的常用方法,12.2.1 数据控件常用属性,Connect属性,Connect属性指定数据控件所要连接的数据库类型。,Visual Basic 60提供了7种可访问的数据库类型,Visual Basic可识别
5、的数据库有:,1)Microsoft Access的MDB文件(缺省值);,2)Borland dBASE、Microsoft Foxpro的DBF文件;,3)Borland Paradox的DB文件;,4)Novell Btrieve的DDF文件;,5)Microsoft Excel的XLS文件;,6)Lotus的WKS文件;,7)Open DataBase Connectivity(ODBC)数据库,2.DatabaseName属性,DatabaseName属性指定具体使用数据库的名称,包括所有的路径名。如果连接的是单表数据库,则DatabaseName属性应设置为数据库文件所在的子目录名
6、,而具体文件名放在RecordSource属性中。如果在“属性”窗口中单击DatabasName属性右边的按钮,会出现一个公用对话框用于选择相应的数据库。例如,下面语句设置了可访问的数据库名称:如果连接一个Microsoft Access的数据库C:职员档案mdb,则Data1DatabaseName”C:职员档案mdb”;如果连接一个Foxpro数据库C:yang职员档案1dbf,因为Foxpro数据库只含有一个表,则Data1DatabaseName”C:yang”,RecordSource=”职员档案1dbf”。如果未写数据库文件的扩展名,则缺省情况下为使用以.mdb为扩展名的数据库文件
7、。,3)RecordSource属性,RecordSource属性确定具体可访问的数据,这些数据构成记录集对象Recordset。4)RecordsetType属性RecordsetType属性确定记录集类型。5)ReadOnly属性在对数据库只查看不修改时,通常将ReadOnly属性设置为True,而在运行时根据一定的条件,响应一定的指令后,才将它设置为False。6)Exclusive属性Exclusive属性值设置为True时,则在通过关闭数据库撤消这个设置前,其他任何人不能对数据库访问。这个属性的缺省值是False。,7)BOFAction、EOFAction属性当BOFAction值
8、为0,控件重定位到第一个记录;BOFAction值为1,移过记录集开始位,定位到一个无效记录,触发数据控件对第一个记录的无效事件。当EOFAction值为0,控件重定位到最后一个记录;当EOFAction值为1,移过记录集结束位,定位到一个无效记录,触发数据控件对最后一个记录的无效事件;EOFAction值为2,向记录集加入新的空记录,可以对新纪录进行编辑,移动记录指针新纪录写入数据库。,12.2.2数据绑定控件常用属性,要使文本等控件与数据控件捆绑在一起,成为数据控件的绑定控件。并且能够受到数据库约束,必须在运行时对这些控件的两个属性进行设置:,1)DataSource属性,DataSour
9、ce属性用来将一个有效的数据控件与一个数据库连接。,2)DataFleld属性,DataFleld属性设置数据库有效的字段与绑定控件建立联系。,图12-10 绑定控件、数据控件和数据库三者的关系,12.2.3使用数据控件操作数据库中的数据,表12-2 窗体属性表,例91、设计一窗体,在窗体内通过文本框等绑定控件显示9.1节中建立的学生情况表内的记录。,不需编写任何代码,就可浏览表中的内容。单击运行按钮就可出现如图12-11所示4个文本框分别显示学号,姓名,性别,和出生年月的内容。,使用数据控件对象的4个箭头可遍历整个记录集中的记录。通过DBList控件和DBCombo控件浏览学生情况表内的记录
10、时,DBList控件和DBCombo控件不是Visual Basic工具箱内的默认控件,需要在开发环境中选择“工程”|“部件”菜单命令,并在随即出现的对话框中选择Microsoft Data Bound List Controls选项,将它们添加到工具箱中。,图12-11 学生情况表显示界面,例12-2:设计一个窗体,通过数据网格控件浏览学生情况表内的记录。参见图12-12所示。,图12-12 通过数据网格控件浏览学生情况表,使用DATA数据控件时可使用MsflexGrid网格控件或VB5.0提供的数据网格控件DBGrid。MsflexGrid控件与DBGrid控件都不是Visual Basi
11、c工具箱内的默认控件,需要在开发环境中选择“工程”主菜单中的“添加部件”命令,并在随即出现的对话框中选择Microsoft Flex Grid Control6.0或Microsoft Data Bound Control5.0,将其添加到工具箱中。,表12-3 窗体属性表,数据控件是依靠数据对象来获取对数据访问的,与其相关的数据对象有:1 Database对象Database对象是物理数据库的逻辑表示。数据控件通过DatabaseName属性连接到一个具体的数据库,并通过它的Database对象表现出来。除了数据控件获取Database对象之外,还可以在程序中定义Database对象,并通过
12、OpenDatabase()函数实现对物理数据库的连接;或者将数据控件的Database对象传递给被定义的Database对象。例如以下语句:Dim Ds1 As Database 定义数据对象Dim Ds2 As DatabaseSet Ds1=OpenDatabase(“e:VB|class.mdb)使Ds1获取物理数据库Set Ds2=Me.data1.Database 将数据控件的Database对象传递给Ds2,12.2.4数据控件上的对象,2 Recordset对象Recordset对象代表一组与数据库相关的逻辑记录集合。它所对应的数据来源可以是数据表,也可以是和SQL语言中查询语
13、句(SELECT)有关的查询结果。Recordset对象有三种类型:Table类型:记录集为表集,可以显示、添加、删除和修改,具有较好的更新性能。Dynaset类型:记录集为动态集,可以显示、添加、删除和修改,并具有较大的操作灵活性。Snapshot类型:记录集为快照集,只能显示,具有较好的显示速度。除了Data控件获取Recordset对象之外,还可以在程序中定义Recordset对象,并通过函数获得数据。Dim Ds As Database 定义数据对象Dim Rs As Recorderset 定义记录对象Set Ds=OpenDatabase(“e:VB|class.mdb)使Ds获取
14、物理数据库Set Rs=Me.data1.Database.OpenRecordse(“SElECT*FROM 学生情况”,dbOpenDynaset)以动态集方式打开从“学生情况”数据表取得的SQL查询,传给Rs对象Set Me.data1.Recorderset=.Rs,12.2.5数据控件的常用方法,1 Refresh方法,如果在设计状态没有为打开数据控件的有关属性全部赋值,或当RecordSource在运行时 被改变后,必须使用激活数据控件的Refresh方法激活这些变化。,2 UpdateCountrols方法,UpdateCountrols方法可以将数据从数据库中重新读到 被数据控
15、件绑定的空件内。使用UpdateCountrols方法终止用户对绑定内控件的修改。,3 UpdateRecord方法,当对绑定内的控件修改后,数据控件需要移动记录集的指针才能保存修改,如果使用UpdateRecord方法可强制数据控件将绑定控件内的数据写入到数据库中而不再触发Vaildate事件。在代码中用该方法修改。,12.2.6数据控件的事件,1 Reposition事件,Reposition事件发生在一条记录成为当前记录后。,只要改变记录集的指针使其从一条指针移到另一条记录。会产生Reposition事件,可以在该事件过程中建立程序,可反映出记录位置、记录总数等。,2 Validate事
16、件,当要移动记录指针前,修改与删除记录前或卸载含有数据控件的窗体时触发Validate事件。Validate事件检查被数据控绑定的控件内的数据是否发生变化。它通过save参数()True或False)判断是否有数据发生变化,Action参数判断哪一种操作触发了Validate事件。Action参数可为表12-4中的值:,表12-4 Validate事件的Action参数表,对记录的操作能够通过Recordset对象的方法实现。其常用方法有:1)AddNew方法加入一条新记录到记录集内存缓冲区。例如:Rs.AddNew2)Edit方法允许对当前记录进行修改。3)Delete方法用于删除当前记录。
17、4)Update方法把内存缓冲区的内容写进数据库文件,保存对数据库所作的改动。5)Close方法关闭记录集和数据库。该方法也能用在数据库对象上,将数据库关闭。Rs.Close 关闭记录集Ds.Close 关闭数据库,12.2.7数据库记录的增删改操作,5)Move方法使用Move方法可代替对数据库控件对象的4个箭头的操作遍历整个记录几种的记录。5种Move方法是:(1)MoveFirst方法移至第一条记录(2)MoveLast方法移至最后一条记录(3)MoveNext方法移至下一条记录(4)MovePrevious方法移至上一条记录(5)Moven方法向前或向后移动n条记录,n为指定的数值。,
18、例12-3:在窗体上用4个命令按钮代替例12-1数据控件对象的4个箭头的操作。窗体属性设置如下:在窗体上增加4个命令按钮,将数据控件的Visible属性设置为False.。通过对4个按钮的编程代替数据控件的4个箭头。窗体如图12-13所示。,图12-13用按钮代替数据控件,上一条和下一条按钮的代码需要考虑Recordset对象的边界,可用Bof和Eof属性检测记录集的首尾,如越界,则用指令定位到第一条或最后一条记录。程序代码如下:Private Sub Command1_Click()Data1.Recordset.MoveFirstEnd SubPrivate Sub Command2_Cl
19、ick()Data1.Recordset.MovePrevious If Data1.Recordset.BOF Then Data1.Recordset.MoveFirstEnd SubPrivate Sub Command3_Click()Data1.Recordset.MoveNext If Data1.Recordset.EOF Then Data1.Recordset.MoveLastEnd SubPrivate Sub Command4_Click()Data1.Recordset.MoveLastEnd Sub,例12-4:在例12-1的基础上增加5个按钮:新增、删除、修改、查找
20、和放弃。如图12-14所示。,表12-5 控件属性设置,图12-14 建立增删改查询功能,Dim editcheck As Boolean 全局变量Private Sub Command1_Click()On Error Resume Next commadn2.Enabled=Not Command2.Enabled Command3.Enabled=Not Command3.Enabled Command4.Enabled=Not Command4.Enabled Command5.Enabled=Not Command5.Enabled If Command1.Caption=添加 Th
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB程序设计教程集 2 VB 程序设计 教程

链接地址:https://www.31ppt.com/p-6522689.html