Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB12

上传人:E**** 文档编号:89183594 上传时间:2019-05-20 格式:PPT 页数:36 大小:580.50KB
返回 下载 相关 举报
Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB12_第1页
第1页 / 共36页
Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB12_第2页
第2页 / 共36页
Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB12_第3页
第3页 / 共36页
Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB12_第4页
第4页 / 共36页
Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB12_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB12》由会员分享,可在线阅读,更多相关《Visual Basic程序设计 教学课件 ppt 作者 刘瑞新 VB12(36页珍藏版)》请在金锄头文库上搜索。

1、本章主要内容: 数据库的概念 Access数据库 使用数据控件 使用ADO控件,第12章 数据库访问技术,12.1 数据库的概念 12.1.1 数据库的概念 1. 数据库 2. 数据库管理系统 3. 数据库应用程序 4. 数据库系统 12.1.2 关系型数据库 关系型数据库由表、记录、字段组成。表的数据组织形式类似与一张二维关系表,每行称为一条记录,每列称为一个字段。一个数据库由若干张表来组成,表与表之间通过关系来连接。,12.2 Access数据库 Access 2000数据库管理系统是Microsoft Office 2000的一个组件,是最常用的本地数据库之一。在VB中可以方便地使用Da

2、ta控件和ADO控件,操作Access数据库。 12.2.1 创建Access数据库和表 1. 创建Access数据库 创建Access数据库的步骤为: 执行“开始”菜单“程序”选项下的“Microsoft Access”命令,启动Access 2000,打开如图121所示的对话框。 选中“空Access数据库”后,单击“确定”按钮。 在打开的“文件新建数据库”对话框中,输入数据库文件名(如stu),并选择保存的位置后,单击“创建”按钮。, 系统将弹出“stu:数据库”,至此一个空Access数据库创建完毕,并以指定的文件名(*.mdb)保存在指定的文件夹中。用户可以在此创建需要的表,也可以退

3、出Access待以后需要时将其打开完成后续工作。,2. 创建Access数据表 新建或打开数据库后,在图12-1所示的数据库对话框中,用户可以选择使用设计器、使用向导或通过输入数据的方法创建表。这里只介绍使用设计器创建表的方法。 双击“使用设计器创建表”选项打开图12-2所示的创建表结构对话框. 依次输入各字段的名称和数据类型,在“字段属性”栏中输入字段的大小、格式等属性值。,一般在每个表中均应指定一个字段为该表的主键(如本例的“学号”字段),主键应唯一的代表一条记录,即所有记录中该字段没有重复的值。有了主键可以方便地与数据库中其他表进行关联,并利用主键值相等的规则结合多个表中的数据创建查询。

4、 输入完毕后关闭设计表结构对话框,系统会提示为新建的表命名(本例命名为“基本情况”)。命名后,新建的表将出现在数据库窗口中。 如果需要修改表结构,可以在数据库窗口中选择了表名称后,单击工具栏中“设计”按钮,重新进入创建表结构窗口进行必要的修改。 双击表名称打开图12-3所示的表数据输入窗口,依次将各种数据输入到数据表中,需要注意的是表中主键字段的值不允许空缺。, 输入完毕后关闭输入窗口,将数据保存在数据库文件中。,12.2.2 创建查询 如果在数据库中存在有多张数据表,并且各表中存在有相同的字段信息。此时为了避免数据冗余,通常利用数据表中的关系来减少表中的字段,如图12-4所示的“成绩”表中就

5、省略了“姓名”、“性别”、“年龄”等字段。当需要使用综合信息时可以通过创建查询实现对多表的信息组合。,创建查询的步骤如下: 单击数据库窗口中的“查询”按钮,双击“在设计视图中创建查询”选项,如图12-5所示,打开查询设计器。, 在“显示表”对话框中,选择需要的表后单击“添加”按钮将其添加到查询中(本例将“成绩表”和“基本情况”添加到查询中)。 由于我们在前面将“学号”字段定义成了主键,此时将自动建立一个“一对一”的关系(用一条连线表示)。将各表中需要的字段依次拖动到查询字段列表区中,构成查询的字段框架,如图12-6所示。,如果需要向查询中添加一些计算字段,如总分、平均分等,可以使用字段生成器。

6、方法为: 在需要的位置上(如本例的“高等数学”之后),单击鼠标右键,在弹出的快捷菜单中执行“生成器”命令,打开图12-7所示的“表达式生成器”窗口。 输入表达式字段名后,用“:”分割后面的表达式内容。选择“成绩表”后,在字段列表区中双击将需要的字段添加到表达式,单击工具栏中对应的符号按钮,生成表达式的计算式。 输入完毕后,单击“确定”按钮。, 如果希望在“平均分”字段中设置保留小数点的位数,可以在平均分字段中单击鼠标右键,在弹出的快捷菜单中执行“属性”命令,在格式栏中输入“0.0”表示保留一位小数,如图12-8所示。, 设计完成关闭设计器窗口时,系统会提示输入新建查询的名称,并将其显示到数据库

7、窗口中,双击查询名称可以看到查询中包含的数据,如图12-9所示。,需要说明的是,查询并没有新建任何数据的副本,只是将不同数据表的字段进行了重新组合,这些数据依然存放在原数据表中。,12.3 使用数据控件 VB通过使用数据控件(Data)、数据绑定控件(如文本框、组合框等标准控件)、数据访问对象、远程数据控件、ADO数据控件来实现对数据库的访问。在这些工具中Data控件和数据绑定控件是初学者最常用的工具,它们具有快捷、方便及功能强大等特点。甚至不需要编写任何程序代码,而通过设置几个关键属性,使用一些类似于文本框这样的数据绑定控件就可以实现对数据库的一般访问。 【例12-1】,12.3.1 数据控

8、件的属性 数据控件是VB的标准控件之一,可以直接从工具箱中加入窗体。Data控件的属性中,3个基本属性(Connect、DatabaseName和RecordSource)决定了所要访问的数据资源。 1. Connect(连接)属性 该属性用于定义所要连接的数据库类型,如“Access”表示连接Access 97格式的数据库。Access 2000表示连接Access 2000格式的数据库。需要说明的是,如果在VB 6.0中使用Access 2000数据库,必须从Microsoft网站上下载并安装VsSp5补丁程序。否则在Connect属性取值列表中不会出现Access 2000选项。,2.

9、DatabaseName(数据库名)属性 该属性决定Data控件连接到哪个数据库上。对于多表数据库(如Access等),该属性为具体的数据库文件名,如:Data1.DatabaseName=“d:students.mdb“。对于单表数据库(如FoxPro等),该属性为数据库存放的目录,数据库文件名应存放在Data控件的RecordSource属性中。如,当需要访问FoxPro数据库“d:foxabcd.dbf”时,应按如下方法设置属性: Data1.DatabaseName=“d:fox“ Data1.RecordSource=“abcd.dbf“ 如果在设计或运行时,改变了Data控件的Da

10、tabaseName属性,应使用Refresh(刷新)方法重新打开新数据库。,3. RecordSource(记录源)属性 该属性主要用来设置Data控件打开的数据库表名或查询名。可以是一个表名、一个数据库中已存在的查询或一条SQL语句。如果在运行时通过代码改变了该属性值(连接到其他数据源),则必须使用Refresh方法使改变生效,并需要重建记录集(Recordset)。 12.3.2 数据控件的事件 Data控件与其他VB控件一样支持许多事件,但除此之外Data控件还支持Error、Reposition、Validate等与数据库访问有关的事件。 1. Error事件 该事件主要用来处理不能

11、被任何应用程序捕获的错误。事件的语法格式为:,Private Sub Data1_Error(DataErr As Integer, Response As Integer) (错误处理代码) End Sub 其中DataErr返回一个错误号。Response的值缺省为1,表示显示错误信息,该值为0表示程序继续执行。 2. Reposition事件 当用户单击Data控件上某个箭头按钮,或者在代码中使用了某个Move或Find方法使某条新记录成为当前记录时,将激发Reposition事件。,3. Validate事件 在一条不同的记录成为当前记录之前,Update方法之前(用UpdateRec

12、ord方法保存数据时除外)及Delete、Unload或Close操作前,会发生该事件。其语法格式如下: Private Sub object_Validate (Action As Integer, Save As Integer) (事件处理代码) End Sub 其中Action是一个整数,用来指示引发这种事件的操作。Save是一个逻辑表达式,用来表示被连接的数据是否改变。,12.3.3 数据控件的方法 数据控件和其他控件一样也有自己的一些方法,常用的有Refersh、UpdataRecord、UpdataControls和Colse方法。 1. Refresh方法 该方法主要用来建立或

13、重新显示与Data控件相连接的数据库记录集。若在程序运行时修改了数据控件的DatabaseName、ReadOnly、Exclusive或Connect属性,就必须使用该方法来刷新记录集。该方法执行后,记录指针将指向记录集中的第一条记录。 2. UpdateRecord方法 通过该方法可以将数据绑定控件上的当前内容写入到数据库中,即可以在修改数据后调用该方法来确认修改。用这种方法在Validate事件期间将被连接的当前内容保存到数据库中,而不再激发Validate事件。,3. UpdateControls方法 通过该方法可以将数据从数据库中重新读入到数据绑定控件中,即可以使用该方法放弃对数据绑

14、定控件中数据的修改。 4. Close方法 该方法主要用于关闭数据库或记录集,并且将该对象设置为空。 注意:在关闭数据库或记录集之前,必须使用Updata方法更新数据库或记录集中的数据,以保证数据的正确性。,12.3.4 记录集对象(Recordset) 在VB中数据库表是不能直接被访问的,VB6.0通过Microsoft Jet 3.51数据库引擎提供的记录集(Recordset)对象来检索和显示数据库记录。一个Recordset对象表示一个或多个数据库表中对象集合的多个对象,或运行一次查询所得到的记录结果。一个Recordset对象相当于一个变量,与数据库表相似,记录集也是由行和列组成的,

15、但不同的是记录集可以同时包含多个表中的数据。 VB的Jet数据库引擎提供了大量的记录集属性和方法。 1. Recordset对象的属性 Recordset对象的常用属性有BOF和EOF属性、Absolute属性、Bookmark属性、RecordCount属性和Position属性。,(1) BOF和EOF属性 这两个属性用来指示记录指针是否指向了第一条记录之前或最后一条记录之后。如果这两个属性同时为True表示该记录集中无任何记录。 (2) AbsolutePosition属性 该属性用于返回当前记录的序号。但不能将其作为记录编号的代替物,因为当执行了删除、添加、查询等操作后,记录的位置可能

16、会改变。 (3) Bookmark属性 该属性返回或设置当前记录集指针的书签,Bookmark的采用的是String类型。在程序中可以使用该属性重定位记录集的指针。下列语句使指针移到其他位置后迅速返回原位: mybookmark=Data1.Recordset.BookMark 设置书签保存当前记录指针位置,Data1.Recordset.MoveFirst 将记录指针移动到第一条记录 Data1.Recordset. BookMark=mybookmark 使记录指针返回到原位置 (4) RecordCount属性 该属性是只读属性,用来获取记录集中记录数。在多用户环境中,该属性返回的值可能是一个不准确的数,这与记录集对象被刷新的频率有关。为了获得准确的数据,在使用该属性前应先调用MoveLast方法。 2. Recordset对象的方法 Recordset对象的常用方法有AddNew方

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号