Visual Basic程序设计 龚为琨 第10章 数据库程序设计

上传人:E**** 文档编号:89350862 上传时间:2019-05-23 格式:PPT 页数:85 大小:1.28MB
返回 下载 相关 举报
Visual Basic程序设计  龚为琨 第10章  数据库程序设计_第1页
第1页 / 共85页
Visual Basic程序设计  龚为琨 第10章  数据库程序设计_第2页
第2页 / 共85页
Visual Basic程序设计  龚为琨 第10章  数据库程序设计_第3页
第3页 / 共85页
Visual Basic程序设计  龚为琨 第10章  数据库程序设计_第4页
第4页 / 共85页
Visual Basic程序设计  龚为琨 第10章  数据库程序设计_第5页
第5页 / 共85页
点击查看更多>>
资源描述

《Visual Basic程序设计 龚为琨 第10章 数据库程序设计》由会员分享,可在线阅读,更多相关《Visual Basic程序设计 龚为琨 第10章 数据库程序设计(85页珍藏版)》请在金锄头文库上搜索。

1、第10章 数据库程序设计,10.1 数据库应用举例 10.2 数据库的建立 10.3 小结 10.4 练习题 10.5 上机实习题,10.1 数据库应用举例,使用VB可以方便地处理和保存各式数据,使用方法与第7章的文件系统所介绍的方法类似。但当数据量太大时,仅用VB将会使程序的运行效率和数据管理能力变得极低。如果能有效利用现有数据库管理软件存放和管理数据,如微软Office系列中的Access,使用VB作为数据库开发工具,则能方便地设计出直观、优美的用户界面,并高效、简便地实现数据的存储和管理。,假设某校要建立一个学生名册管理系统,功能描述如下: (1) 建立一个学生信息档案库,结构如图10-

2、1所示。 (2) 要求实现信息的添加、保存、修改、取消和查询功能。用户界面如图10-2所示。,图10-1 学生信息档案库,图10-2 学生信息用户界面,10.2 数据库的建立,为了实现第10.1节中学生名册管理系统的功能,其数据要按照一定的表格格式存储,即按表的行、列方式将相关信息排列成逻辑组。表中每一行称为记录,每一列称为字段。多个字段构成记录,多个记录构成表,多个表构成数据库,即数据库就是由多个表构成的数据集合。,10.2.1 建立数据库结构 使用Access建立数据库的具体步骤如下: (1) 启动 Microsoft Access,出现如图10-3所示界面。 (2) 在新建数据库中选择

3、Access数据库,按“确定”按钮,此时出现如图10-4所示界面。,图10-3 Access 启动界面,图10-4 Access数据库选择界面,(3) 打开“保存位置”下拉列表,选择合适文件夹,在“文件名(N)”框中输入文件名,本例文件名为学生基本信息,即数据库名为学生基本信息。点击“创建”按钮,结果如图10-5所示。 (4) 单击“新建”按钮,弹出“新建表”对话框,如图10-6所示。,图10-5 数据库名界面,图10-6 “新建表”对话框,(5) 选中“表向导”,按“确定”按钮,出现如图10-7所示界面。 (6) 在“示例表:”中选择学生,在“示例字段:”中选择学生ID、姓氏、地址、邮政编码

4、、电话号码及学号,按“下一步”按钮,出现如图10-8所示界面。 (7) 在“请指定表的名称:”框中输入学生基本信息,再按“下一步”按钮,出现如图10-9所示界面。,图10-7 “表向导”对话框,图10-8 示例字段选择界面,图10-9 表的名称输入界面,(8) 选择“修改表的设计”,同时点击完成按钮,学生基本信息表建立完毕,同时进入修改表设计界面,如图10-10所示。,图10-10 修改表设计界面,10.2.2 修改数据库结构 通过表向导建立的数据库的表的结构、字段名称及字段属性并不能保证完全满足设计要求,因此,在图10-9界面中,选择“修改表的设计”,点击“完成”后,直接进入如图10-10所

5、示的界面。此时,设计者可以根据需要加减字段,也可以修改字段的属性,如表10-1所示。,表10-1 数据表结构设置,图10-11 定义表的结构和字段类型,10.2.3 记录输入与保存 点击图10-5菜单中的“打开”项,即可输入记录。本例输入记录如图10-12所示。 Access 2000与VB 6.0之间存在兼容性的问题,用Access 2000建立的数据库不能直接被VB 6.0访问,所以在保存数据库时必须先转化。具体操作步骤如下: (1) 单击工具菜单项上的数据库实用工具下的转换数据库及之后的到早期Access数据库版本,界面如图10-13所示。,图10-12 输入记录界面,图10-13 转换

6、数据库界面,(2) 在随后出现的对话框中输入数据库名称(本例中使用studentdate),单击“保存”按钮,此时经过转换,进入VB 6.0中用户界面,使用VB 6.0的数据库捆绑控件即可直接访问、设计和实现。 注意:转换后的文件名不能与现存的文件名相同,或可以同名但需改变文件的存放位置。,10.2.4 使用数据库控件读取数据库 打开VB 6.0用户界面,建立如图10-14所示的用户界面。 在图10-14所示的用户界面中,Adodc1是数据库访问控件,它代替了旧的Data控件。 Microsoft提供的OLE DB,即一组“组件对象模型“(COM)接口,解决了以统一的方式访问存储在不同信息源中

7、的数据的问题。ActiveX(r) Data Objects (ADO)是VB中连接应用程序和 OLE DB 的桥梁。,图10-14 用户界面,下面简要介绍Adodc数据访问控件的建立和应用。具体操作步骤如下: 当如图10-14的用户界面除Adodc1以外的控件建立完成后,单击“工程”菜单下的部件项,弹出如图10-15所示的界面。,图10-15 选择Microsoft ADO Data Control 6.0(OLE DB)界面,(1) 选择Microsoft ADO Data Control 6.0(OLE DB),如图10-15所示,单击“确定”按钮,即在控件面板上添加了Adodc控件 ,

8、将该控件拖入到图10-14用户界面中,用户界面即建立完毕。 (2) 在Adodc1控件的属性窗口中,将鼠标移到ConnectionString窗口中,出现浏览图标 ,单击该图标屏幕出现如图10-16所示界面。,图10-16 ConnectionString窗口,(3) 在图10-16界面中选择“Use Connection String”选项,单击“Build ”按钮,出现如图10-17所示的界面。 (4) 选择“Microsoft Jet 4.0 OLE DB Provider”项,单击“下一步”按钮,出现如图10-18所示的数据库选择界面。,图10-17 “数据链接属性”对话框,图10-1

9、8 数据库选择界面,图10-19 测试连接,(5) 单击图10-18所示界面的“测试连接”按钮,若连接成功,屏幕弹出如图10-19所示的连接成功提示。 (6) 层层单击“确定”按钮,退回到Adodc1控件的属性窗口中,在ConnectString窗口中会出现数据库的连接路径。 (7) 在Adodc1控件的属性窗口中,将鼠标移到Record-Source中,单击浏览图标,出现如图10-20所示界面。按照界面所示选择“Command Type”的下拉列表,并连接数据库表,本例中表名为“学生基本信息”。,图10-20 RecordSource选择,(8) 设置文本框控件,Text1(0)的属性设置为

10、:在Categorized卡片下,数据源DataSource属性选择为“Adodc1”,DataField属性选择为“学号”对应字段,如图10-21所示。 Text1(1)Text1(6)的DataSource属性依然选择为“Adodc1”,DataField属性分别选择“姓名”、“性别”、“出生日期”、“家庭住址”、“电子邮箱”和“电话”对应字段。将文本框对应至合适的数据库字段后,无论移动数据库记录指针到何处,文本框都将自动显示数据指针所指的记录内容。,图10-21 DataSource属性选择,(9) 将Adodc1控件的Visible属性设为True,使程序运行时Adodc1控件显示在用

11、户界面上。 (10) 其他设置:根据喜好选择背景、字体等其他属性值。 (11) 此时,该界面已经与数据库连接起来了,点击运行按钮,就可以显示数据库中的记录,如图10-22所示。,图10-22 显示数据库中的记录,10.2.5 搜索指定的记录 VB提供了Find方法用于搜索特定的数据。下面我们将完成“搜索f”按钮的设计,具体步骤如下: (1) 双击搜索按钮,进入命令编辑界面,输入程序代码如下: Private Sub Command1_Click() 搜索 Dim mynumber As String mynumber = InputBox$ (“请输入学号(4位)“, “学号搜索“) 输入搜索

12、的学号,Adodc1.Recordset.MoveFirst 将记录移至第一条 If mynumber “ Then mynumber = “学号=“ & mynumber & “ 组合搜索字符串 Adodc1.Recordset.Find (mynumber) 寻找符合学号的记录,If Adodc1.Recordset.EOF Then 没找到,输出提示信息 MsgBox “没有该学生!“ End If End If End Sub,图10-23 输入框,(2) 运行程序,出现图10-23所示的输入框。输入学号1002,结果显示如图10-24所示,即给出了相符的学生信息。输入学号1111,出

13、现如图10-25所示的信息框,提示在数据库中没有该记录,并在输出界面显示第一条记录。,图10-24 结果显示,图10-25 信息提示,10.2.6 结束、删除 1) 删除记录 (1) Data Control控件中的Recordset对象提供了一种删除记录的方法Delete,即删除记录的核心操作是Adodc1.Recordset.Delete。 同时,Recordset对象还提供了四种移动指针的方法:MoveFirst(移到第一组记录)、Move Previous(移到上一组记录)、MoveNext(移到下一组记录)和MoveLast(移到最后一组记录)。 为在删除前给用户一些提示和确认的机会

14、,可以在删除前加上提示信息,程序如下:,Private Sub Command3_Click() 删除 Dim s As String s = MsgBox(确定要删除吗?, vbQuestion + vbOKCancel,确定删除!) 创建删除确认窗口 If s = 1 Then 确定删除一条记录 Adodc1.Recordset.Delete 删除记录 Adodc1.Recordset.MoveNext 移至下一条记录,If Adodc1.Recordset.RecordCount 0 Then 是否还有记录 If Adodc1.Recordset.EOF Then 是否移记录指针到尽头

15、Adodc1.Recordset.MoveLast 移至最后一条记录 End If End If End If End Sub 当运行程序时显示界面如图10-26所示。,图10-26 运行程序显示界面,图10-27 删除提示,点击“删除”按钮,屏幕出现删除提示窗口,如图10-27所示,此时用户就可以进行删除操作了。 注意: 程序中运用了Recordset对象的一个属性EOF,表明是否记录指针指向数据文件尾端,返回结果是True/False两个值。,(2) VB还提供了On Error GoTo语法,目的是为了在程序运行时,一旦发生错误,可以通过该程序代码,将程序运行流程切换至合适位置,并进行适

16、当的处理,以避免死机。运用On Error GoTo语法,当程序死机时,将自动转向GoTo后标号,如delerr处,并给出相应的出错信息。程序如下: Private Sub Command3_Click() 删除 Dim s As String On Error GoTo delerr,s = MsgBox(确定要删除吗?, vbQuestion + vbOKCancel,确定删除!) 创建删除确认窗口 If s = 1 Then 确定删除一条记录 Adodc1.Recordset.Delete 删除记录 Adodc1.Recordset.MoveNext 移至下一条记录 If Adodc1.Recordset.RecordCount 0 Then

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

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

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