第九章visual basic 与数据库read.pudn.com › downloads163 › ebook › 740562 › vb ›...

33
1 可视化程序设计——第九章 Visual Basic 与数据库 上页 上页 下页 下页 第九章 Visual Basic 与数据库 本章要求: 1. 熟练掌握数据库的基本概念 2. 熟练掌握数据控件和关联控件的使用 3. 熟练掌握数据库管理器的使用 4. 了解SQL的简单使用

Upload: others

Post on 06-Jul-2020

30 views

Category:

Documents


0 download

TRANSCRIPT

1

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

第九章 Visual Basic 与数据库

本章要求:

1. 熟练掌握数据库的基本概念

2. 熟练掌握数据控件和关联控件的使用

3. 熟练掌握数据库管理器的使用

4. 了解SQL的简单使用

2

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.1 数据库概念1.数据库

就是一组排列成易于处理和读取的相关信息的集合。

2. 数 据 库 的组成

关系

一对一

一对多

多对多

3

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.1 数据库概念

一个数据库可以由多个表组成,表与表之间可以用不同的方式相互关联。若第一个表中的一条记录内容与第二个表中多条记录的数据相符,但第二个表中的一条记录只能与第一个表的一条记录的数据相符,这样的表间关系类型叫做一对多关系。

若第一个表的一条记录的数据内容可与第二个表的多条记录的数据相符,反之亦然,这样的表间关系类型叫做多对多关系。

4

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.1 数据库概念

3.数据组织

关系模型已经成为数据库设计事实上的标准。

关系型数据库模型 :

表里有记录,

为一行,记录

由字段来组成。

主键:就是把表里的所有记录区分出来。

学号即为主键

外键:学号多次出现。学号为外键

5

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.1 数据库概念A学生信息表-----------B课程表

参照完整性原则:

B

A---B:一对多A中学号为主键 B中学号为外键。

学 号 姓名 性别 年 龄

9308101 李铭 男 189308102 王强 男 209308103 朱虹 女 19

A

学 号 课程名 成 绩 学 分

9308101 C语言 80 39308102 VB 76 29308101 VB 95 2

6

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.1 数据库概念4. 实现的功能

(1)定义(2)录入(3)操作(4)维护

5. 范式

关系数据库:Access,FoxPro,SQL Server(1)不存在重复的元组(记录)

(2)非主键

值都与主键有关,不存在与主键值无关的字段

(3)非主键值相互独立

除主键外,其他字段互相独立。

如:商品编号 种类 单价 数量

总金额=单价*数量 ‘若存在总额这个字段,则不符合范式理论

7

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.1 数据库概念课号 课名

9308101 001,0029308102 002,003,0049308103 001,004

学号 课号

9308101 0019308101 0029308102 0029308102 0039308102 004

001 VB

002 English

003 高数

004 数据结构

正确的形式:

学号 课号

9308103 0019308103 004

8

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.2 Visual Basic数据库概述

Visual Basic 数据库的构成

Visual Basic 访问数据库的方案

1. VB能够访问的数据库类型

2. VB中的数据访问接口方法

9

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.2 Visual Basic数据库概述——数据库的构成

VB数据库是由用户界面用户界面、数据库引擎数据库引擎以及数据仓库数据仓库 3个部分构成

用户界面用户界面:包括用于与用户交互的所有界面和代码。

用于请求数据库服务的数据访问对象和方法,而不是对数据库的实际操作。

数据引擎数据引擎:是一组动态链接库(DLL)

数据仓库数据仓库:用于存放数据,由若干个数据表文件组成。

数据仓库仅仅只包括数据,并不对数据进行任何处理。对数据进行操作均由数据库引擎完成。

10

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.2 Visual Basic数据库概述访问访问数据库的方案

VB能够访问的数据库类型:

内部数据库内部数据库:也称本地数据库,使用Access数据格式,由Microsoft Jet引擎直接创建操作,可以提供最大的灵活性和最快的访问速度。

外部数据库外部数据库:能够创建操作所有的ISAM(索引顺序访问方法)数据库。如dBASE、FoxPro、Excel、 Lotus1-3以及顺序文本文件等。

ODBCODBC数据库数据库:标准的客户/服务器数据库。例如 SQL Server。

11

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.2 Visual Basic数据库概述

VB访问数据库的方案

SQL SQL — Structured Query Language 结构化查询语言

Jet Jet —Joint Engine Technology 数据连接性引擎技术

DAODAO—Data Access Object 数据访问对象

ADCADC—Advanced Data Connector 高级数据连接器

ADOADO—Active Data Object Active数据对象

ODBCODBC—Open Database Connectivity 开放式的数据库连接

RDC RDC —Remote Data Control 远程数据访问控件

RDO RDO —Remote Data Object 远程数据访问对象

12

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.2 Visual Basic数据库概述

VB访问数据库的方案

接口界面接口界面 访问对象访问对象

VB SQL 通过DB-Library访问微软的SQL Server

DAO/Jet 本地的Jet/Access.MDB、顺序索引数据库

(ISAM)和任何ODBC数据源

DAO/ODBC 任何一种ODBC数据源(经过RDO)

RDO 任何一种ODBC数据源(Lever I 或 II)32位

ADO 任何一种ODBC数据源和任何经过OLE DB界面接口

的数据源

13

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.2 Visual Basic数据库概述

记录集Recordset :在VB中数据库内的表格不允许直接访问,而只能通

过记录集对象进行记录的操作和浏览,因此,记录集是一种浏览数据库的工具。

可以将一个或几个表中的数据构成记录集Recordset

对象,记录集也由行和列构成,它与表类似。

14

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.2 Visual Basic数据库概述

记录集类 说 明

Table 是表格直接显示的数据,它比其它类型记录集处理速度快,内存开销较大

Dynaset 一个或者几个表中记录的引用,动态集和产生动态集的基本表可以相互更新。是最灵活的,功能最强的动态集。

Snap Shot 数据库的一瞬间的状态,现实的数据是静态、只读状态,内存开销最少。

15

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.2 Visual Basic数据库概述

VB的数据库管理器(Visdata.exe)可用于管理数据库。

调用方法:在VB开发环境内单击外接程序菜单中的可视化数据管理器命令可打开可视数据管理器。

1.建立新表:

鼠标右键单击数据库窗口,弹出菜单,选择对应命令。

2.打开、删除表,修改表结构和建立表间的关联等操作:

右键单击数据库窗口内的表名,弹出菜单,选择对应命令。

3.编辑记录:

双击表名,打开表格输入窗,编

辑、增删记录。

16

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.3 数据控件及数据绑定控件

功能:用于访问多种数据库的信息,包括显示、编辑和更新信息等操作。

9.3.1数据控件

Data图标 使用Data控件

DAO 数据控件

ADO 数据控件

Adodc图标 使用Adodc控件

部件→控件→Microsoft ADO Data Control 6.0 (OLEDB)部件→控件→Microsoft ADO Data Control 6.0 (OLEDB)

17

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.3.2 数据控件能够利用三种记录集对象访问数据库中的数据,连接方法:

连接属性 Data控件属性说明

Connect 指定数据控件所要连接的数据库类型。

DatabaseName 指定具体使用的数据库文件名,

包括所有的路径名。

RecordSource 确定具体可访问的数据,这些数据构成

记录集对象

RecordType 确定记录集类型注: RecordSource属性可以是数据库中的单个表名,也可以是使用SQL

查询语言的一个查询字符串。如果连接的是单表数据库,则DatabaseName属性应设置为数据库文件所在的子目录名,而具体文件名放在RecordSource属性中。

18

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

DAO 数据控件

工具箱内数据控件图标形状   画在窗体上的外观

Data图标 使用Data控件

DAO 数据控件

Data图标

Data图标

19

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

Adodc控件

属性属性

Adodc图标

20

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.3 数据控件及数据绑定控件

数据控件只能连接数据库产生记录集,不能显示记录集中的数据,要显示记录集中的数据必须通过能与它

绑定的控件来实现。

9.3.2 数据绑定控件

1.标准控件Lable TextBox ComboBox CheckBox 等

21

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.3 数据控件及数据绑定控件

2.专用的数据绑定控件

DataGrid

部件→控件→Microsoft DataGrid Control 6.0 (OLEDB)部件→控件→Microsoft DataGrid Control 6.0 (OLEDB)

部件→控件→Microsoft Data Bound List Controls 6.0 部件→控件→Microsoft Data Bound List Controls 6.0

DBList

DBCombo

FlexGrid

部件→控件→Microsoft FlexGrid Control 6.0部件→控件→Microsoft FlexGrid Control 6.0

22

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.3.2数据绑定控件

1.标准控件Lable TextBox ComboBox CheckBox 等

与数据库连接相关的属性与数据库连接相关的属性

DataSource属性

用来设定数据来源,即该控件的信息来自于哪一个数据控件。

DataField属性

用来设置该控件所绑定的数据信息,即数据控件所访问的数据库表的哪一个字段名。

23

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.3.2数据绑定控件2.专用数据绑定控件

FlexGrid DataGrid DBList DBCombo 等

与数据库连接相关的属性与数据库连接相关的属性

DataSource属性

DataField属性

DataGrid控件没有DataField属性,它是类似于表格的数据绑定控件,可显示记录及字段的所有行和列。

24

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.3 数据控件及数据绑定控件

数据库文件AccessFilename.mdbTable:table1Field1Field2…FieldnTable2…

数据控件1ConnectStringRecordSource

数据绑定控件1DataSourceDataField

数据绑定控件2DataSourceDataField

数据绑定控件nDataSourceDataField

数据控件2ConnectStringRecordSource

VB应用程序与数据库的关系

25

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.4 应用程序实现

控件名 . RecordSet . 方法

记录集的定位方法

MoveFirst :把记录指针定位到第一条记录

MoveLast :把记录指针定位到最后一条记录

MoveNext :把记录指针定位到下一条记录

MovePrevious:把记录指针定位到上一条记录

RecordSet提供的这些定位方法对应于数据控件上的四个箭头按钮。

26

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.4 应用程序实现控件名 . RecordSet . 方法

记录编辑方法及相关属性

Addnew: 用于添加一条记录到记录集的末尾

Delete:用于删除当前记录

Update :用于保存某一记录的改变

删除一条记录后,应该用删除一条记录后,应该用MoveNextMoveNext等方法等方法来改变当前记录,否则会出现因访问一个无来改变当前记录,否则会出现因访问一个无效记录而产生的错误。效记录而产生的错误。

27

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.4 应用程序实现

第一步第一步 建营扎寨建营扎寨

(创建数据库)(创建数据库)

应用Microsoft Access创建

使用语言直接创建

28

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.4 应用程序实现

第二步第二步 千里相会千里相会

(与数据库连接)(与数据库连接)

第三步第三步 随心所欲随心所欲

(对数据库进行操作)(对数据库进行操作)

29

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.5 使用对象变量访问数据库

1. Opendatabase()

打开数据库 data包括数据库和表名。

2. OpenTable(“表名”)打开数据库里的表

3.OpenRecordSet()

打开一个记录集:表、动态集和快照

30

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.6 结构化查询语言(SQL)

1.结构化查询语言概述SQL语言是第四代语言:机器语言、汇编语言、高级语言、SQL语言。

高级语言:需要自己设计算法,告诉机器“怎样做“。SQL语言:只要告诉SQL“做什么”就行了。

2. 使用SQL

SQL操纵语句:

①第一条语句 查询

Select 表名.字段名

From 表名1,表名2,表名3

Where 条件

31

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.6 结构化查询语言(SQL)

②第二条语句 插入

insert into 表名(字段名)

values( 与字段名一一对应)

③第三条语句 删除

Delete from 表名 where 条件

④第四条语句 修改记录

Update set 字段名=value

除了操纵语句,又还有定义、维护语句。

32

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

9.6 结构化查询语言(SQL)

3.数据库管理器

演示:打开前面建立的数据库窗口,a1已经建立,右边出现SQL操纵语句

也可借助查询生成器:

在数据库管理窗口,单击鼠标右键,“新建查询”,出现查询生成器窗口。

字段名称:score.score 运算符:>值:80,,将And加入条件

运行则显示满足条件的记录

33

可视化程序设计——第九章 Visual Basic 与数据库 上页上页 下页下页

本章小结:

1. 数据库的基本概念

2. 数据控件的属性、常用方法和使用

3. 数据控件的关联控件的使用

4. 数据库管理器的使用

5. 使用对象变量访问数据库

6. SQL简介和简单使用