第 12章 数据库应用
第 2页
12.1 关系型数据库的基本概念
12.2 Visual Basic数据库应用程序
12.3 可视化数据库管理器的使用
12.4 数据控件 Data和绑定控件
12.5 ADO控件和 ActiveX绑定控件
12.6 结构化查询语言( SQL) 简介
第 3页
12.1 关系型数据库的基本概念
关系模型中, 将一组数据列成二维表
(1) 记录 (Record),每一行数据为一个记录
(2) 字段 (Field),每一列为一个字段。字段名;相同数据类型
(3) 数据表 (Table),一系列记录组成的二维表,由若干行和若干列组成
(4)数据库 (DataBase),多个相关联的数据表的集合
关系数据库模型
第 4页
12.2 Visual Basic数据库应用程序
1.数据库应用程序
用户界面
数据库引擎
数据库
2.数据库引擎的接口
Visual Basic中数据库引擎的接口有三种:
数据访问对象( DAO)
远程数据对象( RDO)
ActiveX数据对象( ADO)
3.Visual Basic能够访问的数据库类型
内部数据库
外部数据库
ODBC数据库
第 5页
12.3 可视化数据库管理器的使用
1,创建数据库
2,输入和修改数据表的记录
3,数据库管理窗口的工具栏
4,数据库记录的查询
5,数据窗体设计器
第 6页
12.4 数据控件 Data和绑定控件
Visual Basic提供了一个简单、方便、快捷的数据库访问对象 ——
数据控件( Data控件),通过设置属性,可以使数据控件与结构不
同的数据库及其中的数据表(即数据集)发生联系,并对它们进行读
写操作。利用数据控件,只需编写少量的代码,甚至不编写任何代码
程序,即可访问多种数据库中的任意一条记录。
第 7页
数据控件 Data的常用属性、方法和事件
1.数据控件的常用属性
2.数据控件 Data的 Recordset对象(记录集)的常用属性
3.数据控件 Data的 Recordset对象(记录集)的常用方法
第 8页
数据控件 Data和绑定控件的关联方法
1,绑定控件的种类
在 Visual Basic中, 可以与数据控件相关联的绑定控件有:
⑴ 内部控件:文本框, 标签, 复选框, 图像框, 列表框, 组合框,
OLE容器和图片框 。
⑵ ActiveX 控件, DBList,DBCombo,DataGrid,MSFlexGrid、
MaskEdBox,RichTextBox。
2,数据控件 Data对象和绑定控件对象的关联方法
第 9页
12.5 ADO控件和 ActiveX绑定控件
1,ADO控件
2..ActiveX绑定控件
DataList控件
DataCombo控件
DataGrid控件
Hierarchical FlexGrid控件
【例 12.1】 利用 ADO控件和 DataGrid控件创建一个对“学生管理”数据库的连接。
第 10页
12.6 结构化查询语言( SQL) 简介
SQL是 Structured Query Language的简称,即“结构化查询语言”。
SQL是关系型数据库的标准查询语言。
1,CREATE语句
CREATE语句用于创建表 。
格式:
CREATE TABLE<表名 >(<列名 ><数据类型 >
[列级完整性约束条件 ][,<列名 ><数据类型 >[列级完整性约束条件 ]]… )
第 11页
2,SELECT语句
SELECT语句主要被用来对数据库进行查询并返回符合查询标准的数据 。
格式:
SELECT [ ALL | DISTINCT ] <目标列表达式 >[,<目标列表达式 >]…
FROM <表名或视图名 >[,<表名或视图名 > ]…
[WHERE <条件表达式 > ]
[GROUP By <列名 1> [HAVING<条件表达式 >]]
[ORDER BY<列名 2>[ASC | DESC ]]
⑴,目标列表达式, 用于指定要查询的列 。 FROM用于指定数据源
⑵ WHERE用于指定查询条件 。
⑶ ORDER BY用于给出排序记录的条件 。 ASC表示升序, DESC表示降序 。
⑷ GROUP BY用于对查询结果分组 。
第 12页
3,INSERT语句
INSERT语句用于向指定数据表中插入数据记录
格式:
INSERT
INTO<表名 >[(<>[,<>… )]
values(<>[,<>]… )
4,UPDATE语句
UPDATE语句用于更新指定数据表中的字段值 。
格式:
UPDATE <表名 >
SET <列名 >=<表达式 >[,<列名 >=<表达式 >]…
[WHERE <条件 >]
第 13页
5,DELETE语句
用于删除指定数据表内符合条件的记录 。
格式:
DELETE FROM<表名 > [WHERE <条件 >]
6,SQL中的函数
COUNT( [DISTINCT | ALL] *) 统计元组个数
COUNT( [DISTINCT | ALL]<列名 >) 统计一列中值的个数
SUM( [DISTINCT | ALL] <列名 >) 计算一列值的总和
AVG( [DISTINCT | ALL] <列名 >) 计算一列值的平均值
MAX( [DISTINCT | ALL] <列名 >) 求一列值中的最大值
MIN( [DISTINCT | ALL] <列名 >)求一列值中的最小值