数据库第八章
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Password, OpenOptions 以下参数均为可选项 ➢ ConnectionString :包含连接信息的字符串。 ➢ UserID :包含建立连接时所使用的用户名称。 ➢ Password :字符串,包含建立连接时所用密码。 ➢ OpenOptions :ConnectOptionEnum 值。如
3、属性或函数
1)Recordset.RecordCount:返回Recordset中 数据记录的数目
2)Recordset(i).Name:返回Recordset中第i个字段的名 称,i由0开始,因此i的最大数是 Recordset.RecordCount-1
3)Recordset(“字段名称”):返回指定字段名称的数据 内容。如rs(“name”) rs(index) 4)Recordset.BOF:判断指针是否已超过Recordset的顶 端,如果是则返回true 5)Recordset.EOF:判断指针是否已超过Recordset的 末端,如果是则返回true
最大的优点是以统一的方式处理所有的数据库。
应用程序
ODBC API(接口)
驱动程序管理器
驱动 驱动 驱动 程序 程序 程序
数据源 数据源
数据源
数据库 数据库
数据库
包括用户要访问的数据和与它有关的操作系统、 DBMS和访问DBMS使用的网络平台。
应用程序要访问一个数据库,必须选择【控制面板】 |【管理工具】中的“数据源(ODBC)”管理器注册 一个数据源,管理器根据数据源提供的数据库位置、 数据库类型及ODBC驱动程序等信息,建立起 ODBC与具体数据库的联系。只要应用程序把数据 源名(data source name ,DSN)提供给ODBC ,ODBC就能建立起与相应数据库的连接。
Recordset对象的CursorType属性
adOpenUnspecifed 光标类型不确定 adOpenForwardOnly 前滚静态光标。这种光标只能向前浏览记录集, 比如用MoveNext向前滚动,这种方式可以提 高浏览速度。 adOpenKeyset 键集游标 采用这种光标的记录集看不到其他用户的新增、 删除操作 adOpenDynamic动态游标 所有数据库的操作都会立即在客户记录集上反应 出来。 adOpenStatic静态光标 产生一个静态的记录集,但其它用户的新增、删除、 更新操作是不可见的。
User ID=sa;password=123;
CousorLocation=aduserclient 以便调用支持批更新的“客户端游标提供者”
2)常用方法
Open 方法 (ADO Connection) 功能:打开到数据源的连接。 语法 connection.Open ConnectionString, UserID,
Options属性
-1:指示Source参数中的命令类型为未知 1:指示被执行的字符串包含一个命令文本 2:指示被执行的字符串包含一个表的名字 3:指示被执行的字符串包含一个存储过程名
2、Recordset.MoveFirst:将数据记录指针移至第一条 3、Recordset.MoveLast:将数据记录指针移至最后一 条 4、Recordset.MoveNext:将数据记录指针往后移一条 5、Recordset.MovePrevious:将数据记录指针向前移 一条 6、Recordset.update:刷新记录集 7.Close方法 用来关闭所指定的RecordSet对象。 RecordSet.Close
第八章 VB与数据库连接
一、数据库访问技术
数据库访问技术将数据库外部与其通信的过程抽 象化,通过提供访问接口,简化了客户端访问 数据库的过程。
目前Windows系统上常见的数据库接口包括: ODBC(开放数据库互连) DAO(数据访问对象) RDO(远程数据对象) OLE DB(对象链接嵌入数据库) ADO(ActiveX数据对象) 重点掌握
Close方法
关闭Connection对象以便释放所有关联的系统资源。 Connection.close Set cn=nothing
记录集对象Recordset:
数据的获取、结果的检验以及数据库的更新。 可以依照查询条件获取或显示所要的数据列 与记录。Recordset对象会保留每项查询返回 的记录所在的位置,以便逐项察看结果。
ConnectionString= “Provider=SQLOLEDB.1; 指定OLE DB提供者 Integrated Security=SSPI; 验证方式 Persist Security Info=False; 是否保存安全信息 Initial Catalog=library; Data Source=OWEN\ABC(127.0.0.1)"
先使用数据库管理系统(例如:SQL Server)建立好 数据库和数据表结构,然后在程序中通过使用 ADODC数据库控件或引用ADO对象与数据库中的表 建立连接,再通过数据控件(例如:DataGrid等) 来进行数据库的各种操作。
二、ADO技术详解
ADO技术有两种方法: ADO对象 ADO控件
ADO对象模型定义了一个可编程的分层对象集合, 主要由三个对象成员Connection、Command和Recor 对象,以及几个集合对象Errors、Parameters和Fields 等所组成。
3、DAO
DAO(Data Access Object)是一组Microsoft Access/Jet 数据库引擎的COM自动化接口。 DAO直接与Access/Jet数据库通信,通过Jet数 据库引擎,DAO也可以同其它数据库进行通信,
使用DAO对Access数据库访问非常方便。
4、RDO
RDO是Remote Data Object的缩写,最初是作为 ODBC API的抽象,为Visual Basic程序员提供的 编程对象,因此RDO与Visual Basic密切相关。 由于RDO直接使用ODBC API对远程数据源进行操作 ,而不像DAO要经过Jet引擎,所以,RDO可以为 使用关系数据库服务器的应用程序提供很好的性 能。
ADO对象与数据源的连接: 首先需要引用数据对象,然后才能进行数据连接。
(1)引用数据对象 工程->引用->Microsoft ActiveX Data Objects 2.5 Library
(2)在程序中设置连接 声明一个类型为Connection的变量,供连接数据源使用 Dim Cn as Connection
1.Open方法 打开代表基本表、查询结果或者以前保存的 RecordSet中记录的游标(指向数据库数据的位 置,即指针),也就是说可以与数据库建立连接。 recordSet.Open Source, ActiveConnection, CursorType, LockType, Options
A、 Source :指定数据表的名称 B、 ActiveConnection :指定一个已经声明的 Connection对象 C、 CursorType :设置打开Recordset所返回的 据记录指针类型,参数值0-3,见表 D、LockType属性,见下表 E、Options
Recordset对象的LockType属性
(1)adLockReadOnly:只读,默认 (2)adLockPessimistic:锁定被编辑的记录,直到 执行 Update方法或移动记录时为止。 (3)adLockOptimistic:执行Update方法或移动记录 时锁定记录,直到操作完成为止。 (4)adLockBatchOptimistic:可以同时更新多个记录
Error 访问数据源时所返回的错误信息
Parameter 与命令对象有关的参数
Field 记录集中某个字段的信息
Connection对象:使用ADO进行数据连接,如连接 ODBC、SQL Server、Access等。
1)几个常用的属性:
ConnectionString, CousorLocation
声明一个 Adodb.recordset的变量,作记录集用 Dim rs as具体连接 Dim Cn As ADODB.Connection Dim Rs As ADODB.Recordset Set Cn = New ADODB.Connection Set Rs = New ADODB.Recordset
果设置为 adConnectAsync,则异步打开连接。 如果设置为ConnectComplete当连接可用时将 调用该事件。
Execute方法
执行指定的查询、SQL语句、存储过程或特定提 供者的文本等内容,返回一个RecordSet对象 语法如下:
1)对于没有返回结果的命令格式:
connection.Execute CommandText, RecordsAffected, Options
Connection对象 Errors集合
Command对象 Parameters集合
Recordset对象 Fields集合
Error对象 Parameter对象
Field对象
表 ADO对象描述
对象名
描述
Connection 指定连接数据来源
Command 发出命令信息从数据源获取所需数
据
Recordset 由一组记录组成的记录集
三.用ADO操纵数据库 使用ADO操作数据库的主要步骤和方法: 打开数据库。
首先需要创建数据库连接对象(connection),然后 调用该对象的Open方法即可打开数据库。 操作数据库数据。 在 数 据 库 打 开 之 后 , 通 过 Connection 、 Command对象执行SQL命令,或者创建记录集 (Recordset)对象,使用该对象的各种方法就可以 进行数据库数据的查询、定位以及增加、删除和修 改。 关闭数据库。使用上面创建的数据库连接对象的 close方法就可以进行数据库的关闭。
5、OLE DB OLE DB对ODBC进行了两个方面的扩展: 一是提供了一个数据库编程的OLE接口,即COM; 二是提供了一个可用于关系型和非关系型数据源 的接口。
与ODBC API一样,OLE DB 也属于低层的数据库 编程接口,
利用OLE DB进行软件开发应该包括两类软件: OLE DB客户程序(Consumer):
是使用OLE DB接口的应用程序. OLE DB供应程序(Provider):
实现OLE DB接口并实际与数据库服务器通信的DLL.
6、ADO(Activex Data Object)
ADO是目前在Windows环境中比较流行的数据库 编程技术。它是建立在OLE DB底层技术之上的高级 编程接口。对OLE DB进行了封装。
6)Field数据字段集合,可以采用以下方式: Rs.fields(“name”) rs.fields(index)
Command对象定义将对数据源执行的指定命令。 1)CommandText属性定义命令的可执行文本。 2)使用Execute方法执行命令并在适当的时候 返回Recordset对象。 3)通过设置ActiveConnection属性使打开的连 接与Command对象关联。 4)设置Name属性将Command标识为与Connection 对象关联的方法。
1、ODBC
ODBC是微软公司开放服务结构中有关数据库的 一个组成部分,建立了一组规范,并提供了一组 对数据库访问的标准API(应用程序编程接口)。 这些API利用SQL来完成大部分任务。
一个基于ODBC的应用程序对数据库的操作 不依赖任何DBMS,不直接与DBMS打交道, 所有的数据库操作由对应的DBMS的ODBC 驱动程序完成。均可用ODBC API进行访问。
2)对于有返回结果的命令格式: Set recordSet = connection.Execute (CommandText,
RecordsAffected, Options)
CommandText是字符串类型,包含要执行的SQL 语句、表名、存储过程或特定提供者的文本; RecordsAffected是长整型变量类型,其值是执 行指定的操作所影响的记录数目; Options参数表示对数据库请求的类型。
3、属性或函数
1)Recordset.RecordCount:返回Recordset中 数据记录的数目
2)Recordset(i).Name:返回Recordset中第i个字段的名 称,i由0开始,因此i的最大数是 Recordset.RecordCount-1
3)Recordset(“字段名称”):返回指定字段名称的数据 内容。如rs(“name”) rs(index) 4)Recordset.BOF:判断指针是否已超过Recordset的顶 端,如果是则返回true 5)Recordset.EOF:判断指针是否已超过Recordset的 末端,如果是则返回true
最大的优点是以统一的方式处理所有的数据库。
应用程序
ODBC API(接口)
驱动程序管理器
驱动 驱动 驱动 程序 程序 程序
数据源 数据源
数据源
数据库 数据库
数据库
包括用户要访问的数据和与它有关的操作系统、 DBMS和访问DBMS使用的网络平台。
应用程序要访问一个数据库,必须选择【控制面板】 |【管理工具】中的“数据源(ODBC)”管理器注册 一个数据源,管理器根据数据源提供的数据库位置、 数据库类型及ODBC驱动程序等信息,建立起 ODBC与具体数据库的联系。只要应用程序把数据 源名(data source name ,DSN)提供给ODBC ,ODBC就能建立起与相应数据库的连接。
Recordset对象的CursorType属性
adOpenUnspecifed 光标类型不确定 adOpenForwardOnly 前滚静态光标。这种光标只能向前浏览记录集, 比如用MoveNext向前滚动,这种方式可以提 高浏览速度。 adOpenKeyset 键集游标 采用这种光标的记录集看不到其他用户的新增、 删除操作 adOpenDynamic动态游标 所有数据库的操作都会立即在客户记录集上反应 出来。 adOpenStatic静态光标 产生一个静态的记录集,但其它用户的新增、删除、 更新操作是不可见的。
User ID=sa;password=123;
CousorLocation=aduserclient 以便调用支持批更新的“客户端游标提供者”
2)常用方法
Open 方法 (ADO Connection) 功能:打开到数据源的连接。 语法 connection.Open ConnectionString, UserID,
Options属性
-1:指示Source参数中的命令类型为未知 1:指示被执行的字符串包含一个命令文本 2:指示被执行的字符串包含一个表的名字 3:指示被执行的字符串包含一个存储过程名
2、Recordset.MoveFirst:将数据记录指针移至第一条 3、Recordset.MoveLast:将数据记录指针移至最后一 条 4、Recordset.MoveNext:将数据记录指针往后移一条 5、Recordset.MovePrevious:将数据记录指针向前移 一条 6、Recordset.update:刷新记录集 7.Close方法 用来关闭所指定的RecordSet对象。 RecordSet.Close
第八章 VB与数据库连接
一、数据库访问技术
数据库访问技术将数据库外部与其通信的过程抽 象化,通过提供访问接口,简化了客户端访问 数据库的过程。
目前Windows系统上常见的数据库接口包括: ODBC(开放数据库互连) DAO(数据访问对象) RDO(远程数据对象) OLE DB(对象链接嵌入数据库) ADO(ActiveX数据对象) 重点掌握
Close方法
关闭Connection对象以便释放所有关联的系统资源。 Connection.close Set cn=nothing
记录集对象Recordset:
数据的获取、结果的检验以及数据库的更新。 可以依照查询条件获取或显示所要的数据列 与记录。Recordset对象会保留每项查询返回 的记录所在的位置,以便逐项察看结果。
ConnectionString= “Provider=SQLOLEDB.1; 指定OLE DB提供者 Integrated Security=SSPI; 验证方式 Persist Security Info=False; 是否保存安全信息 Initial Catalog=library; Data Source=OWEN\ABC(127.0.0.1)"
先使用数据库管理系统(例如:SQL Server)建立好 数据库和数据表结构,然后在程序中通过使用 ADODC数据库控件或引用ADO对象与数据库中的表 建立连接,再通过数据控件(例如:DataGrid等) 来进行数据库的各种操作。
二、ADO技术详解
ADO技术有两种方法: ADO对象 ADO控件
ADO对象模型定义了一个可编程的分层对象集合, 主要由三个对象成员Connection、Command和Recor 对象,以及几个集合对象Errors、Parameters和Fields 等所组成。
3、DAO
DAO(Data Access Object)是一组Microsoft Access/Jet 数据库引擎的COM自动化接口。 DAO直接与Access/Jet数据库通信,通过Jet数 据库引擎,DAO也可以同其它数据库进行通信,
使用DAO对Access数据库访问非常方便。
4、RDO
RDO是Remote Data Object的缩写,最初是作为 ODBC API的抽象,为Visual Basic程序员提供的 编程对象,因此RDO与Visual Basic密切相关。 由于RDO直接使用ODBC API对远程数据源进行操作 ,而不像DAO要经过Jet引擎,所以,RDO可以为 使用关系数据库服务器的应用程序提供很好的性 能。
ADO对象与数据源的连接: 首先需要引用数据对象,然后才能进行数据连接。
(1)引用数据对象 工程->引用->Microsoft ActiveX Data Objects 2.5 Library
(2)在程序中设置连接 声明一个类型为Connection的变量,供连接数据源使用 Dim Cn as Connection
1.Open方法 打开代表基本表、查询结果或者以前保存的 RecordSet中记录的游标(指向数据库数据的位 置,即指针),也就是说可以与数据库建立连接。 recordSet.Open Source, ActiveConnection, CursorType, LockType, Options
A、 Source :指定数据表的名称 B、 ActiveConnection :指定一个已经声明的 Connection对象 C、 CursorType :设置打开Recordset所返回的 据记录指针类型,参数值0-3,见表 D、LockType属性,见下表 E、Options
Recordset对象的LockType属性
(1)adLockReadOnly:只读,默认 (2)adLockPessimistic:锁定被编辑的记录,直到 执行 Update方法或移动记录时为止。 (3)adLockOptimistic:执行Update方法或移动记录 时锁定记录,直到操作完成为止。 (4)adLockBatchOptimistic:可以同时更新多个记录
Error 访问数据源时所返回的错误信息
Parameter 与命令对象有关的参数
Field 记录集中某个字段的信息
Connection对象:使用ADO进行数据连接,如连接 ODBC、SQL Server、Access等。
1)几个常用的属性:
ConnectionString, CousorLocation
声明一个 Adodb.recordset的变量,作记录集用 Dim rs as具体连接 Dim Cn As ADODB.Connection Dim Rs As ADODB.Recordset Set Cn = New ADODB.Connection Set Rs = New ADODB.Recordset
果设置为 adConnectAsync,则异步打开连接。 如果设置为ConnectComplete当连接可用时将 调用该事件。
Execute方法
执行指定的查询、SQL语句、存储过程或特定提 供者的文本等内容,返回一个RecordSet对象 语法如下:
1)对于没有返回结果的命令格式:
connection.Execute CommandText, RecordsAffected, Options
Connection对象 Errors集合
Command对象 Parameters集合
Recordset对象 Fields集合
Error对象 Parameter对象
Field对象
表 ADO对象描述
对象名
描述
Connection 指定连接数据来源
Command 发出命令信息从数据源获取所需数
据
Recordset 由一组记录组成的记录集
三.用ADO操纵数据库 使用ADO操作数据库的主要步骤和方法: 打开数据库。
首先需要创建数据库连接对象(connection),然后 调用该对象的Open方法即可打开数据库。 操作数据库数据。 在 数 据 库 打 开 之 后 , 通 过 Connection 、 Command对象执行SQL命令,或者创建记录集 (Recordset)对象,使用该对象的各种方法就可以 进行数据库数据的查询、定位以及增加、删除和修 改。 关闭数据库。使用上面创建的数据库连接对象的 close方法就可以进行数据库的关闭。
5、OLE DB OLE DB对ODBC进行了两个方面的扩展: 一是提供了一个数据库编程的OLE接口,即COM; 二是提供了一个可用于关系型和非关系型数据源 的接口。
与ODBC API一样,OLE DB 也属于低层的数据库 编程接口,
利用OLE DB进行软件开发应该包括两类软件: OLE DB客户程序(Consumer):
是使用OLE DB接口的应用程序. OLE DB供应程序(Provider):
实现OLE DB接口并实际与数据库服务器通信的DLL.
6、ADO(Activex Data Object)
ADO是目前在Windows环境中比较流行的数据库 编程技术。它是建立在OLE DB底层技术之上的高级 编程接口。对OLE DB进行了封装。
6)Field数据字段集合,可以采用以下方式: Rs.fields(“name”) rs.fields(index)
Command对象定义将对数据源执行的指定命令。 1)CommandText属性定义命令的可执行文本。 2)使用Execute方法执行命令并在适当的时候 返回Recordset对象。 3)通过设置ActiveConnection属性使打开的连 接与Command对象关联。 4)设置Name属性将Command标识为与Connection 对象关联的方法。
1、ODBC
ODBC是微软公司开放服务结构中有关数据库的 一个组成部分,建立了一组规范,并提供了一组 对数据库访问的标准API(应用程序编程接口)。 这些API利用SQL来完成大部分任务。
一个基于ODBC的应用程序对数据库的操作 不依赖任何DBMS,不直接与DBMS打交道, 所有的数据库操作由对应的DBMS的ODBC 驱动程序完成。均可用ODBC API进行访问。
2)对于有返回结果的命令格式: Set recordSet = connection.Execute (CommandText,
RecordsAffected, Options)
CommandText是字符串类型,包含要执行的SQL 语句、表名、存储过程或特定提供者的文本; RecordsAffected是长整型变量类型,其值是执 行指定的操作所影响的记录数目; Options参数表示对数据库请求的类型。