第十章VB与数据库 教学内容 1.数据库概述 2.数据管理器 使用数据控件访问数据库 4.报表 目的要求 1.理解数据库的基本概念 2.掌握利用“可视化数据管理器”创建及维护数据库的方法 3.掌握使用数据控件访问数据库的基本方法 掌握使用数据环境设计器与数据报表设计器构造报表的方法 三、教学重点与难点 教学重点:“可视化数据管理器”创建及维护数据库 使用数据控件访问数据库的基本方法 教学难点:使用数据控件访问数据库的基本方法 四、教学方法 多媒体教学 第一讲数据库概述与数据管理器(2学时) 教学内容 10.1数据库概述 10.2数据管理器 二、目的要求 1.理解数据库的基本概念 2.掌握利用“可视化数据管理器”创建及维护数据库的方法 、教学重点与难点 教学重点:数据库的基本概念 利用“可视化数据管理器”创建及维护数据库的方法 教学难点:数据库的基本概念
第十章 VB 与数据库 一、教学内容 1.数据库概述 2.数据管理器 3.使用数据控件访问数据库 4.报表 二、目的要求 1.理解数据库的基本概念 2.掌握利用“可视化数据管理器”创建及维护数据库的方法 3.掌握使用数据控件访问数据库的基本方法 4. 掌握使用数据环境设计器与数据报表设计器构造报表的方法 三、教学重点与难点 教学重点:“可视化数据管理器”创建及维护数据库 使用数据控件访问数据库的基本方法 教学难点:使用数据控件访问数据库的基本方法 四、教学方法 多媒体教学 第一讲 数据库概述与数据管理器(2 学时) 一、教学内容 10.1 数据库概述 10.2 数据管理器 二、目的要求 1. 理解数据库的基本概念 2.掌握利用“可视化数据管理器”创建及维护数据库的方法 三、教学重点与难点 教学重点:数据库的基本概念 利用“可视化数据管理器”创建及维护数据库的方法 教学难点:数据库的基本概念
四、教学方法 多媒体教学 五、教学过程 10.1数据库概述 10.1.1数据库基本概念 1.数据库 数据库是以一定方式组织、存储及处理相互关联的数据的集合,它以一定的数据结构和 定的文件组织方式存储数据,并允许用户访问。这种集合具备下述特点 最少冗余 数据资源共享 数据独立性,即数据独立于使用它的应用程序 由统一的软件系统管理和控制数据的增加、删除、修改和检索; 2.数据库分类 数据库中数据的组织形式有多种,按数据库使用的数据结构模型划分,到目前为止,数 据库可分为 层次数据库:采用层次模型 网状数据库:采用网状模型 关系数据库:采用关系模型; 面向对象数据库:采用面向对象模型。 关系数据库中常用的术语有 关系数据库的结构由表(专业术语称做关系)组成,每个表都有一个名称,称做表名 般来说,同一个数据库中的表名不能相同。表中存储了一行行的数据,每一行数据称做 条“记录”( record)。表中纵向列称做列,又称做“字段”( field)。每一个字段(列)都 有一个名称,称做字段名或列名。同一个表中,列名不能相同。应用程序通过表名和列名访 问数据库中的数据 ●主键( Primary Key):又称做主码,它是能够唯一标识一条记录的一个或一组列(字 段),去掉其中的某个列后,余下的列不能唯一标识表中的一条记录 ●外部键( Foreign Key):它由一个或多个属性组成,它或它们是另一个表的主键。 通常使用外部键建立表之间的关系 ●索引:索引是加快数据库访问的一种手段,目的是实现对数据行的快速、直接存取 而不必扫描整个表。索引通常对一个或多个列表创建,表的索引字段的每个值在索引中都有 个入口,同时使用指针指向具有该值的数据行。 视图:它是一个与真实表相同的虚拟表,用于限制用户可以看到和修改的数据量 从而简化数据的表达式。 ●存储过程:它是一个编译过的SQL程序。在该过程中可以嵌入条件逻辑、传递参数 定义变量和执行其他编程任务 3.数据库管理系统(DBMS 数据库管理系统是基于某种数据结构模型的、管理数据库并提供数据库访问接口的通用 软件,它通常具备下述功能: ●数据库定义功能:提供数据定义语言DDL,用户使用数据定义语言能够定义数据库的 结构、数据完整性和安全性等约束条件
四、教学方法 多媒体教学 五、教学过程 10.1 数据库概述 10.1.1 数据库基本概念 1.数据库 数据库是以一定方式组织、存储及处理相互关联的数据的集合,它以一定的数据结构和 一定的文件组织方式存储数据,并允许用户访问。这种集合具备下述特点: 最少冗余; 数据资源共享; 数据独立性,即数据独立于使用它的应用程序; 由统一的软件系统管理和控制数据的增加、删除、修改和检索; 2.数据库分类 数据库中数据的组织形式有多种,按数据库使用的数据结构模型划分,到目前为止,数 据库可分为: ⚫ 层次数据库:采用层次模型; ⚫ 网状数据库:采用网状模型; ⚫ 关系数据库:采用关系模型; ⚫ 面向对象数据库:采用面向对象模型。 关系数据库中常用的术语有: 关系数据库的结构由表(专业术语称做关系)组成,每个表都有一个名称,称做表名, 一般来说,同一个数据库中的表名不能相同。表中存储了一行行的数据,每一行数据称做一 条“记录”(record)。表中纵向列称做列,又称做“字段”(field)。每一个字段(列)都 有一个名称,称做字段名或列名。同一个表中,列名不能相同。应用程序通过表名和列名访 问数据库中的数据。 ⚫ 主键(Primary Key):又称做主码,它是能够唯一标识一条记录的一个或一组列(字 段),去掉其中的某个列后,余下的列不能唯一标识表中的一条记录。 ⚫ 外部键(Foreign Key):它由一个或多个属性组成,它或它们是另一个表的主键。 通常使用外部键建立表之间的关系。 ⚫ 索引:索引是加快数据库访问的一种手段,目的是实现对数据行的快速、直接存取 而不必扫描整个表。索引通常对一个或多个列表创建,表的索引字段的每个值在索引中都有 一个入口,同时使用指针指向具有该值的数据行。 ⚫ 视图:它是一个与真实表相同的虚拟表,用于限制用户可以看到和修改的数据量, 从而简化数据的表达式。 ⚫ 存储过程:它是一个编译过的 SQL 程序。在该过程中可以嵌入条件逻辑、传递参数、 定义变量和执行其他编程任务。 3.数据库管理系统(DBMS) 数据库管理系统是基于某种数据结构模型的、管理数据库并提供数据库访问接口的通用 软件,它通常具备下述功能: ⚫ 数据库定义功能:提供数据定义语言 DDL,用户使用数据定义语言能够定义数据库的 结构、数据完整性和安全性等约束条件
●数据库操作功能:提供数据操作语言DM,用户使用数据操作语言完成数据査询、插 入、删除等操作; ●数据库运行、控制功能:提供数据安全性控制、数据完整性控制、多用户环境的并 发控制以及数据库恢复等: ●数据库维护功能:提供数据加载、转储、数据库重组、性能分析与监控等 ●数据字典:存放数据库结构的描述等信息 数据通讯功能:实现联机处理、分时处理、分布式处理等功能 10.1.2VB数据库应用程序 1.VB数据库应用程序的组成 VB数据库应用程序由以下3大部分组成: 用户界面 数据库引擎 ●数据库 2.用户和数据库引擎的接口 用户和数据库引擎的接口(即数据访问接口)有如下几种: ●数据控件( Data control) 数据访问对象(DAO) 远程数据对象(RDO) ● Activex数据对象(ADO) 3.VB6.0可以访问的数据库类型 VB可以通过数据库引擎访问以下3类数据库 ●Jet数据库:数据库由Jet引擎直接生成和操作,不仅灵活而且快速。 Microsoft Access和VB使用相同的Jet数据库引擎 ●ISAM数据库:索引顺序访问方法(ISAM)数据库有几种不同的形式,如 DBASE Microsoft foxpro和 Paradox。在ⅦB中可以生成和操作这些数据库。 ●ODBC数据库:开放式数据库连接(ODBC),这些数据库包括遵守ODBC标准的客户/ 服务器数据库,如 Microsoft SQL Server、 Sybase以及 Oracle等。VB可以使用任何支持 ODBC标准的数据库。 4.VB数据库应用程序的数据库访问过程 当今的数据库系统大都采用客户/服务器访问模式。我们用 Visual basic6.0编写的访 问数据库的应用程序通常位于客户端,它向数据库管理系统(数据库服务器)发送访问请求, 数据库服务器分析客户程序的请求、操作数据并向客户程序返回结果。如图10-1所示。 10.2数据管理器 10.2.1创建一个数据库 使用“可视化数据管理器”创建数据库的步骤 10.2.2向数据库中添加数据表 使用“数据库窗口”创建一个学生学籍表的操作步骤 10.2.3数据表中数据的编辑 使用“可视化数据管理器”向数据库中添加、修改、删除记录的操作步骤 11.2.4添加或删除索引 为表创建索引和/或指定主键的操作步骤
⚫ 数据库操作功能:提供数据操作语言 DML,用户使用数据操作语言完成数据查询、插 入、删除等操作; ⚫ 数据库运行、控制功能:提供数据安全性控制、数据完整性控制、多用户环境的并 发控制以及数据库恢复等; ⚫ 数据库维护功能:提供数据加载、转储、数据库重组、性能分析与监控等; ⚫ 数据字典:存放数据库结构的描述等信息; ⚫ 数据通讯功能:实现联机处理、分时处理、分布式处理等功能。 10.1.2 VB 数据库应用程序 1.VB 数据库应用程序的组成 VB 数据库应用程序由以下 3 大部分组成: ⚫ 用户界面 ⚫ 数据库引擎 ⚫ 数据库 2.用户和数据库引擎的接口 用户和数据库引擎的接口(即数据访问接口)有如下几种: ⚫ 数据控件(Data Control) ⚫ 数据访问对象(DAO) ⚫ 远程数据对象(RDO) ⚫ ActiveX 数据对象(ADO) 3.VB6.0 可以访问的数据库类型 VB 可以通过数据库引擎访问以下 3 类数据库: ⚫ Jet 数据库:数据库由 Jet 引擎直接生成和操作,不仅灵活而且快速。Microsoft Access 和 VB 使用相同的 Jet 数据库引擎。 ⚫ ISAM 数据库:索引顺序访问方法(ISAM)数据库有几种不同的形式,如 DBASE、 Microsoft FoxPro 和 Paradox。在 VB 中可以生成和操作这些数据库。 ⚫ ODBC 数据库:开放式数据库连接 (ODBC),这些数据库包括遵守 ODBC 标准的客户/ 服务器数据库,如 Microsoft SQL Server、Sybase 以及 Oracle 等。VB 可以使用任何支持 ODBC 标准的数据库。 4.VB 数据库应用程序的数据库访问过程 当今的数据库系统大都采用客户/服务器访问模式。我们用 Visual Basic 6.0 编写的访 问数据库的应用程序通常位于客户端,它向数据库管理系统(数据库服务器)发送访问请求, 数据库服务器分析客户程序的请求、操作数据并向客户程序返回结果。如图 10-1 所示。 10.2 数据管理器 10.2.1 创建一个数据库 使用 “可视化数据管理器”创建数据库的步骤 10.2.2 向数据库中添加数据表 使用“数据库窗口”创建一个学生学籍表的操作步骤 10.2.3 数据表中数据的编辑 使用“可视化数据管理器”向数据库中添加、修改、删除记录的操作步骤 11.2.4 添加或删除索引 为表创建索引和/或指定主键的操作步骤
1.创建索引 2.删除索引 10.2.5使用查询生成器 使用“查询生成器”构造和测试 SELECT语句的步骤 六、作业 习题10.110.210.310.4 第二讲使用数据控件访问数据库(2学时) 教学内容 10.3使用数据控件访问数据库 二、目的要求 1.掌握使用数据控件访问数据库的基本方法 、教学重点与难点 教学重点:数据控件的属性、集合、事件和方法 教学难点:使用数据控件访问数据库的基本方法 四、教学方法 多媒体教学 五、教学过程 10.3使用数据控件访问数据库 创建了数据库和数据库中的表之后,应用程序就可以通过多种方式访问数据库中的数 据,包括添加、删除、检索等 数据控件本身不能显示数据库的数据,只能通过设置数据控件的一些属性,链接指定的 数据库文件,再借助数据绑定控件显示字段内容并接受更改。 10.31Data控件 数据控件(Data控件)是VB的基本控件,利用它可以在应用程序中访问前面所创建的 数据库 数据控件可以不用代码完成以下功能: 完成对本地和远程数据库的链接 打开指定的数据库表,或者是基于SQL的查询集 ●将表中的字段传至数据绑定控件,并针对数据绑定控件中的修改来更新数据库
1.创建索引 2.删除索引 10.2.5 使用查询生成器 使用“查询生成器”构造和测试 SELECT 语句的步骤 六、作业 习题 10.1 10.2 10.3 10.4 第二讲使用数据控件访问数据库(2 学时) 一、教学内容 10.3 使用数据控件访问数据库 二、目的要求 1. 掌握使用数据控件访问数据库的基本方法 三、教学重点与难点 教学重点:数据控件的属性、集合、事件和方法 教学难点:使用数据控件访问数据库的基本方法 四、教学方法 多媒体教学 五、教学过程 10.3 使用数据控件访问数据库 创建了数据库和数据库中的表之后,应用程序就可以通过多种方式访问数据库中的数 据,包括添加、删除、检索等。 数据控件本身不能显示数据库的数据,只能通过设置数据控件的一些属性,链接指定的 数据库文件,再借助数据绑定控件显示字段内容并接受更改。 10.3.1 Data 控件 数据控件(Data 控件)是 VB 的基本控件,利用它可以在应用程序中访问前面所创建的 数据库。 数据控件可以不用代码完成以下功能: ⚫ 完成对本地和远程数据库的链接。 ⚫ 打开指定的数据库表,或者是基于 SQL 的查询集。 ⚫ 将表中的字段传至数据绑定控件,并针对数据绑定控件中的修改来更新数据库
●关闭数据库。 数据绑定控件(也称数据识别控件)是指能够与Data控件一起使用、从而操作数据库 中数据的控件。常用的数据绑定控件如标签、文本框、图片框、图像框、复选框、列表框和 组合框等,VB还包括了若干种数据绑定的 ActiveⅩ控件,诸如 Datagrid、 DataCombo、 Chart 以及 Datalist控件等。用户也可以创建自己的数据绑定的 ActiveX控件或从其他开发商购 买控件。大多数数据绑定控件都有 Data Source和 DataField属性,前者指定绑定的数据源 后者指定绑定的字段 1.数据控件的属性 (1) Connect属性 Connect属性定义数据控件连接的数据库类型 (2) DatabaseName属性 Database Name属性定义数据控件连接的数据库的名称 (3) RecordSource属性 RecordSource属性定义数据控件操作的数据库表的名称。 (4) Exclusive属性 Exclusive属性指定数据库的打开方式。缺省值Fae表示允许多个程序同时以共享方式 打开数据库,即支持用户的并发访问。如果把该属性的值设置为True,则指定只允许一个 应用程序以独占方式打开数据库 (5) Recordset Type属性 Recordset Type属性指定数据控件产生的记录集的类型。该属性可以指定三种风格的记 录集: Table、 Dynaset、 Snapshot (6) ReadOnly属性 ReadOnly属性指定数据控件产生的记录集是否为只读类型。该属性为Tue时,记录集 只读,否则可读可修改。 注意:设计程序时定义该属性后,该属性就起作用了,但是,如果在程序中通过代码动 态修改该属性的值,那么修改之后必须执行数据控件的 Refresh方法, ReadOnly属性的作用 才能发挥出来。 (7) BOFAction属性 BOFAction属性指定记录集当前记录指针移动到第一条记录后,再向前移动时数据控件 的操作方式 (8) EOFAction属性 EOFAction属性指定记录集当前记录指针移动到最后一条记录后再向后移动时数据控 件的操作方式 (9) Recordset属性 Recordset属性指定或返回数据控件对应的 Recordset对象,该对象中保存了数据控件对 数据库查询的结果记录集 (10) RecordCount属性 Recordcount属性返回记录集对象中已经访问过的记录数或记录总数。需要返回记录集 中的记录总数时,执行语句 Recordset. Movelast Print Recordset RecordCount 2.数据控件的方法
⚫ 关闭数据库。 数据绑定控件(也称数据识别控件)是指能够与 Data 控件一起使用、从而操作数据库 中数据的控件。常用的数据绑定控件如标签、文本框、图片框、图像框、复选框、列表框和 组合框等,VB 还包括了若干种数据绑定的 ActiveX 控件,诸如 DataGrid、DataCombo、Chart 以及 DataList 控件等。用户也可以创建自己的数据绑定的 ActiveX 控件或从其他开发商购 买控件。大多数数据绑定控件都有 DataSource 和 DataField 属性,前者指定绑定的数据源, 后者指定绑定的字段。 1.数据控件的属性 (1)Connect 属性 Connect 属性定义数据控件连接的数据库类型, (2)DatabaseName 属性 DatabaseName 属性定义数据控件连接的数据库的名称。 (3)RecordSource 属性 RecordSource 属性定义数据控件操作的数据库表的名称。 (4)Exclusive 属性 Exclusive 属性指定数据库的打开方式。缺省值 False 表示允许多个程序同时以共享方式 打开数据库,即支持用户的并发访问。如果把该属性的值设置为 True,则指定只允许一个 应用程序以独占方式打开数据库。 (5)RecordsetType 属性 RecordsetType 属性指定数据控件产生的记录集的类型。该属性可以指定三种风格的记 录集:Table、Dynaset、Snapshot。 (6)ReadOnly 属性 ReadOnly 属性指定数据控件产生的记录集是否为只读类型。该属性为 True 时,记录集 只读,否则可读可修改。 注意:设计程序时定义该属性后,该属性就起作用了,但是,如果在程序中通过代码动 态修改该属性的值,那么修改之后必须执行数据控件的 Refresh 方法,ReadOnly 属性的作用 才能发挥出来。 (7)BOFAction 属性 BOFAction 属性指定记录集当前记录指针移动到第一条记录后,再向前移动时数据控件 的操作方式。 (8)EOFAction 属性 EOFAction 属性指定记录集当前记录指针移动到最后一条记录后再向后移动时数据控 件的操作方式。 (9)Recordset 属性 Recordset 属性指定或返回数据控件对应的 Recordset 对象,该对象中保存了数据控件对 数据库查询的结果记录集。 (10)RecordCount 属性 RecordCount 属性返回记录集对象中已经访问过的记录数或记录总数。需要返回记录集 中的记录总数时,执行语句: Recordset.MoveLast Print Recordset.RecordCount 2.数据控件的方法