ADO数据访问接口.ppt
内容提要,本章介绍ADO的基本概念,以及如何在ASP程序中使用ADO的对象。 介绍ADO的对象Connection、RecordSet和Command的使用。 介绍SQL语句的基本概念及如何利用SQL语句操作数据库。并介绍访问数据库的三个基本格式。,ADO数据访问接口概述,ADO常用的四种对象及其功能如下。 (1) 连接对象(Connection):用来连接数据库。 (2) 记录集对象(RecordSet):用来保存查询语句返回的结果。 (3) 命令对象(Command):用来执行SQL(Structured Query Language)语句或者SQL Server的存储过程。 (4) 参数对象(Parameter):用来为存储过程或查询提供参数。 下面介绍常用的连接对象(Connection)、记录集对象(RecordSet)、命令对象(Command)。,Connection数据对象,与数据库的所有通信都通过一个打开的Connection对象进行。对一个数据库进行数据的插入和读取之前,必须先打开数据库的连接 数据库表是由行和列组成的一个二维表,当使用ADO打开数据库的时候,会有一个指针指向某一行记录,默认的情况下该指针指向数据库表的第一行。假定该指针叫“rs”,如果要访问数据库表的字段,可以用图6-1所示的方法。,关系型数据库表与指针,其中:写法rs(0)、rs(“学号”)、rs.Fields(0)和rs.Fields(“学号”)是相同的,写法rs(3)、rs(“语文”)、rs.Fields(3)和rs.Fields(“语文”)是相同的,其余类推。根据上表和注释: rs(4).Name 等价于 rs.Fields(4).Name 等价于 数学 rs(1).Name等价于rs.Fields(1).Name等价于性别 假设当前的指针指向第三行记录,那么 rs(2).Value等价于rs(姓名)等价于rs(2) 等价于小张 rs(4).Value等价于rs(4) 等价于rs(数学)等价于60,打开和关闭数据库连接,要建立与一个数据库的连接,首先创建Connection对象的一个实例,然后调用Connection对象的Open方法打开一个连接 通过程序6-01.asp输出数据库的表头。,数据库调用的基本格式,格式一:数据库调用的基本格式 格式说明:利用Execute方法执行SQL语句 第一步:建立Connection对象 set conn = Server.CreateObject(ADODB.Connection) 第二步:使用Connection对象的Open方法建立数据库连接 conn.Open(driver=Microsoft Access Driver (*.mdb);dbq= dbq= dbq=“_ Server.MapPath(Access数据库) 第三步:建立Command对象 cmd = Server.CreateObject(ADODB.Command) cmd.ActiveConnection = conn cmd.CommandText = sql 第四步:使用Command对象的Execute方法执行SQL语句 如果执行查询语句 rs = cmd.Execute() 如果执行数据操纵语句 cmd.Execute(),使用Command对象,使用Command对象来执行SQL 语句,如程序6-09.asp所示。,例6-2 分页列表的删除和修改,本案例实现的功能是:为案例6-1的分页列表添加修改数据和删除数据的功能。首先为列表添加两列:修改和删除。显示的主页面如图6-16所示。,案例6-3 分页版本的留言簿,这里再对留言簿作一次升级,在案例5-2的基础上加入分页功能。 只要更改display.asp文件就可以。,小结,本章重点理解访问数据库的三大基本格式及各自的特点。掌握Connection,RecordSet和Command对象的使用方法。 熟练掌握利用格式二实现数据库的分页显示和利用SQL语句操作数据库的方法。,本章习题,一、选择题 1. 可以使用ADO来访问的数据库是_。 A) Microsoft Access B) Microsoft SQL Server C) Oracle D) 以上都可以 2. 命令对象(Command):用来执行_。 A) SQL语句 B) SQL Server的存储过程 C) 连接数据库 D)返回记录集 3. 语句rs.Fields.Count 返回的值是_。 A) 记录集的行数 B) 记录集的列数 C) 记录集的行数+1 D) 记录集的列数-1 4. 使用BeginTrans()_,利用CommitTrans()_,如果有错误发生,利用RollbackTrans()来_。 A) 提交一个事务 B) 总结事务 C) 开始一个事务 D) 取消事务 5. 可以利用Errors集合的_来判断是否有错误发生 A) Number属性 B) Description属性 C) Count属性 D) Source属性,二、填空题,1. 当执行事务的时候,如果没有错误发生,则conn.Errors.Cout将为_。 2. 创建记录集对象的一个实例,可以使用_,这种方法创建的记录集指针只能向下,而不能向上移动,即不能执行MoveFirst()和MovePrevious()指令。 3. 判断记录集合是否到表的最后, 利用语句_。,三、简答题与程序设计题,1. 简述ADO的功能及常用的三大对象的用途。 2. 访问数据库格式一有什么特点?可以执行哪些SQL语句? 3. 如何实现模糊查询? 4. 如何用变量替换SQL语句的值? 5. 格式二的数据打开方式和锁定方式有几种?各有什么含义? 6. 比较访问数据库的三个基本格式的异同。,