通过本章学习,应该掌握以下内容:
1,ADO中各个对象,数据集合间的关系
2,Connection对象的方法和属性
3,RecordSet对象的方法和属性
4,Command对象的方法和属性
5,Field对象和 Fields数据集合的方法和属性
6,Properties数据集合和 Property对象的方法和属性
7,Parameters数据集合与 Parameter对象的方法和属性
8,Errors数据集合和 Error对象的方法和属性第 15章 利用 ADO实现网页与数据库的连接
15.1 ADO概述
ASP提供了强大的数据库支持,ASP对数据库的访问可以通过 ADO模式来实现 。 ADO给开发人员提供了一种快捷,简单,高效的数据库访问方法,
ADO可以包含在脚本中来产生对数据库的连接,
并从数据库表中读取记录,形成实际要使用的对象集合 。 而且,对数据资源 ( 如数据库 ),ADO
提供了应用程序一级的界面 。 不过,ADO并不与数据资源直接通信,而是通过称为 OLE DB( 对象链接与嵌入式数据库 ) 的中间界面 。
ADO对象主要包含 Connection对象,RecordSet对象,Command对象,Parameter对象,Field对象,
Property对象和 Error对象等七个对象 。
15.1.1 ADO对象
ADO对象包含 Fields数据集合,Properties数据集合,Parameters数据集合和 Error数据集合等四个数据集合 。
15.1.2 ADO数据集合
15.1.3 ADO对象与数据集合之间的关系
Connection对象 Recordset对象
Error对象
Parameter
对象
Command对象
Field对象
E xecu te 操作方法
A cti veC o n n ect
属性
E xecu te 操作方法
F i el d s 数据对象
S o u rce 属性
P aram ete rs
数 据 集 合
E rro rs 数据集合
A cti veC o n n ect
属性对象和数据集合的关系图
Connection对象的 Open方法用来初始化一个连接,
只 有 使 用 了 Connection 对象的 Open 方 法 后,
Connection对象才会真正存在,然后才能发命令对数据源产生作用 。 通常在使用 Open方法时有如下两种途径:
( 1) 直接将连接字符串传给 Open方法 。
( 2) 利用它的 ConnectionString属性
15.2 Connection对象
15.2.1 Connection对象的方法
1,Open方法当调用了 Close方法后,系统就停止了同数据源之间的连接,并且释放与连接有关的系统资源 。 当调用此方法时,不只是关闭 Connection对象,而且还关闭了其他正在使用该 Connection对象的 ADO对象 。 不过
Close方法只是释放与其相关的系统资源,Connection
对象本身并没有释放 。 因此,一个关闭的 Connection
对象还可以接着用 Open方法打开,而不用再次创建 。
2,Close方法
3,BeginTrans方法
4,CommitTrans方法
5,Execute方法
6,RollbackTrans方法
RollbackTrans方法和 CommitTrans方法相反,它是取消此次事务以来对数据源所做的所有操作,并不写入数据源 。
15.2.2 Connection对象的属性
Connection 对象的属性包括 Attributes,
CommandTimeout,ConnectionString,
ConnectionTimeout,CursorLocation,
DefaultDatabase,IsolationLevel,Mode,
Provider,State,Version等 。
Connection对象提供 Errors,Properties两种数据集合 。 前者表示 Connection对象运行时最近一次的错误或警告信息,后者表示 Connection对象所定义的相关属性 。
15.2.3 Connection对象的数据集合
15.3 Request对象属性
( 1) Open方法 Open方法是用来打开一个给予
ActiveConnection和 Source属性的 Recordset。
( 2) Close方法 Close方法用于关闭 Recordset对象并释放相关资源 。
( 3) Clone方法 Clone方法用来创建一个 Recordset
对象的完全拷贝 。
1,Request对象属性
15.3.1 Recordset对象的方法
2,刷新,移动数据的方法
BOF属性:当前游标指到 Recordset的第一笔 。
EOF属性:当前游标指到 Recordset的最后一笔 。
Move方法:移动游标到 Recordset中的某一个记录 。
AbsolutePosition属性:当前游标所在 Recordset中的位置 。
Bookmark ( 书签 ) 属性:在 Recordset中的一条记录做一个标记 。
( 1) addNew方法 addNew方法用来向数据库中增加新纪录 。
( 2) Delete方法 Delete方法用来删除当前记录 。
( 3) Update方法 Update方法表示将对 Recordset对象中的当前记录的任何修改保存在数据源中 。
( 4) CancelUpdate方法 CancelUpdate方法用来取消在调用 Update方法前所作的一切修改 。
( 5) UpdateBatch方法 该方法将取消对 Recordset的修改 。
3,编辑修改数据的方法该属性指示要被调度返回服务器的记录 。
1,MarshalOptions属性
15.3.2 Recordset对象的属性该属性指定当前记录所在的页 。
2,AbsolutePage属性该属性指定 Recordset对象当前记录的序号位置 。
3,AbsolutePosition属性该属性返回唯一标识 Recordset对象中当前记录的书签,或者将 Reeordset对象的当前记录设置为由有效书签所标识的记录 。
4,Bookmark属性该属性指示缓存在本地内存中的 Recordset对象的记录数 。
5,CacheSize属性该属性指示缓存在本地内存中的 Recordset对象的记录数 。
5,CacheSize 属性该属性指示在 Recordset对象中使用的游标类型 。
6,CursorType属性该属性为 Recordset中的数据指定筛选条件 。
7,Filter属性该属性指示对 Recordset对象当前生效的索引的名称 。
8,Index属性该属性指示编辑过程中对记录使用的锁定类型 。
9,LockType属性该属性指示通过查询返回 Recordset记录的最大数目 。
10,MaxRecords属性该属性指示 Recordset对象包含的数据页数 。 。
11,PageCount属性该属性指示 Recordset中一页所包含的记录数 。
12,PageSize属性该属性指示 Recordset对象中记录的当前数目 。
13,RecordCount属性该属性指定一个或多个 Recordset对象中排序的字段名,并指定按升序还是降序对字段进行排序 。
14,Sort属性该属性指示 Recordset对象中数据的来源 。
15,Source属性该属性对所有可应用对象,说明其对象状态是打开或是关闭 。
16,State属性
15.3.3 RecordSet对象的数据集合
RecordSet对象的数据集合包括 Field数据集合,
Properties数据集合 。 由于 Fields数据集合中包括
RecordSet 对象的所有 Field 数 据 字 段 对 象 ;
Properties数据集合包含 RecordSet对象所有属性 。
关于数据集合的内容将在后面介绍 。
15.4 Command对象
CreateParameter方法使用指定属性创建新的
Parameter对象,并在执行之前加到 Command对象的 Parameter集合中 。 Parameter对象表示传给 SQL
语句或存储进程的一个数 。
15.4.1 Command对象的方法
1,CreateParameter方法该方法执行在 CommandText属性中指定的查询,
SQL 语句 或存储 过程 。 其方法 与 Connection 的
Execute方法类似 。
2,Execute方法该属性指示指定的 Command或 Recordset对象当前所属的 Connection对象 。
15.4.2 Command的属性
1,ActiveConnection属性该属性包含要根据提供者发送的命令的文本 。
2,CommandText属性该属性指示在终止尝试和产生错误之前执行命令期间需等待的时间 。
3,CommandTimeout属性该属性指示 Command对象的类型 。
4,CommandType属性该属性可以指示执行前是否保存命令的编译版本 。
5,Prepared属性
Append方法将对象追加到集合中 。 如果集合是
Fields,可以先创建新的 Field对象然后再将其追加到集合中 。
15.5 Fields集合和 Field对象
15.5.1 Fields集合的方法及属性
1,Append方法
Item方法根据名称或序号返回集合的特定成员 。
2,Item方法
Delete方法表示从 Fields集合中删除对象 。
3,Delete方法该方法更新集合中的对象以便反映来自提供者的可用对象和特定于提供者的对象 。
4,Refresh方法
Fields集合的属性只有 Count属性,它指示集合中对象的数目 。
5,Fields集合的属性该方法将数据追加到大型文本,二进制数据 Field
或 Parameter对象 。
15.5.2 Field对象的方法
1,AppendChunk方法该方法返回大型文本或二进制数据 Field对象的全部或部分内容 。
2,GetChunk方法该属性指示字段的值的实际长度 。
15.5.3 Field对象的属性
1,AppendChunk方法该属性指示 Field对象所定义的大小 。
2,DefinedSize属性
Name属性指示对象的名称 。
3,Name属性该属性指出 Parameter或 Field对象中数字值的范围 。
4,NumericScale属性该属性指示发生任何更改前已在记录中存在的
Field的值 。
5,OriginalValue属性该属性指示在 Parameter对象中数字值或数字 Field
对象的精度 。
6,Precision属性该属性指示数据库中 Field对象的当前值 。
7,UnderlyingValue属性
Value 属 性 指 示 赋 给 Field,Parameter 或
Property对象的值 。
8,Value属性
Properties 集 合 是 包 含 特 定 对 象 实 例 的 所 有
Property 对象,有时候也称为 Properties数据集合对象 。 包括 Count属性,Refresh方法,Item方法等 。
Count属性用来取得 Properties集合中包含的
Property对象个数 。
Refresh方法用来重新取得 Properties数据集合中所有的 Property对象个数 。
Item方法用来取得 Properties集合中的 Property对象 。
15.6 Properties数据集合和 Property对象
15.6.1 Properties数据集合
Property对象主要是用来记录相应 ADO对象的每一项属性值,包括了 Name属性,Value属性,Type属性,Attributes属性等 。
Name属性表示对象属性的名称 。
Value属性表示对象的属性值 。
Type属性表示对象属性的数据类型 。
Attributes属性表示对象的特性 。
15.6.2 Property对象该方法将对象追加到集合中 。 如果集合是 Fields,
可以先创建新的 Filed对象然后再将其追加到集合中 。
15.7 Parameters集合和 Parameter对象
15.7.1 Parameters集合的方法
1,Append方法该方法从 Parameters集合中删除对象 。
2,Delete方法
Count属性;它指示集合中对象的数目 。
Item属性:它用来返回集合中某一个参数 。 它有一个索引值,它即可以是所要的参数在 Parameters集合中的参数值,也可以是参数的名字 。
15.7.2 Parameter集合的属性
AppendChunk方法该方法将数据追加到大型文本,二进制数据
Field或 Parameter对象 。
15.7.3 Parameter对象的方法该属性指示 Parameter所标明的是输入参数,输出参数还是既是输出又是输入参数或该参数是否为存储过程返回的值 。
15.7.4 Parameter对象的属性
1,Direction属性
Name属性指示对象的名称 。
2,Name属性该属性指出 Parameter或 Held对象中数字值的范围 。
3,NumericScale属性该属性指示在 Parameter对象中数字值或数字 Field
对象的精度 。
4,Precision属性该属性表示 Parameter对象的最大大小 ( 按字节或字符 ) 。
5,Size属性该属性指示赋给 Field,Parameter或 Property对象的值 。
6,Value属性
Errors数据集合,也称 Errors数据集合对象,包含在响应涉及提供者的单个失败时产生的所有 Error
对象 。 包括 Count属性,Clear方法,Item方法 。
15.8 Errors集合和 Error对象
15.8.1 Errors数据集合
Error对象负责记录存储一个系统运行时发生的错误或警告 。 Error 对象提供了 Description 属性,
Number 属性,Source 属性,NativeError 属性,
SQLState属性,HelpContext属性,HelpFile属性等 。
15.8.2 Error对象
15.9 利用 ADO实现新闻发布系统
15.9.1 数据库的建立
15.9.2 程序源代码
E N D
1,ADO中各个对象,数据集合间的关系
2,Connection对象的方法和属性
3,RecordSet对象的方法和属性
4,Command对象的方法和属性
5,Field对象和 Fields数据集合的方法和属性
6,Properties数据集合和 Property对象的方法和属性
7,Parameters数据集合与 Parameter对象的方法和属性
8,Errors数据集合和 Error对象的方法和属性第 15章 利用 ADO实现网页与数据库的连接
15.1 ADO概述
ASP提供了强大的数据库支持,ASP对数据库的访问可以通过 ADO模式来实现 。 ADO给开发人员提供了一种快捷,简单,高效的数据库访问方法,
ADO可以包含在脚本中来产生对数据库的连接,
并从数据库表中读取记录,形成实际要使用的对象集合 。 而且,对数据资源 ( 如数据库 ),ADO
提供了应用程序一级的界面 。 不过,ADO并不与数据资源直接通信,而是通过称为 OLE DB( 对象链接与嵌入式数据库 ) 的中间界面 。
ADO对象主要包含 Connection对象,RecordSet对象,Command对象,Parameter对象,Field对象,
Property对象和 Error对象等七个对象 。
15.1.1 ADO对象
ADO对象包含 Fields数据集合,Properties数据集合,Parameters数据集合和 Error数据集合等四个数据集合 。
15.1.2 ADO数据集合
15.1.3 ADO对象与数据集合之间的关系
Connection对象 Recordset对象
Error对象
Parameter
对象
Command对象
Field对象
E xecu te 操作方法
A cti veC o n n ect
属性
E xecu te 操作方法
F i el d s 数据对象
S o u rce 属性
P aram ete rs
数 据 集 合
E rro rs 数据集合
A cti veC o n n ect
属性对象和数据集合的关系图
Connection对象的 Open方法用来初始化一个连接,
只 有 使 用 了 Connection 对象的 Open 方 法 后,
Connection对象才会真正存在,然后才能发命令对数据源产生作用 。 通常在使用 Open方法时有如下两种途径:
( 1) 直接将连接字符串传给 Open方法 。
( 2) 利用它的 ConnectionString属性
15.2 Connection对象
15.2.1 Connection对象的方法
1,Open方法当调用了 Close方法后,系统就停止了同数据源之间的连接,并且释放与连接有关的系统资源 。 当调用此方法时,不只是关闭 Connection对象,而且还关闭了其他正在使用该 Connection对象的 ADO对象 。 不过
Close方法只是释放与其相关的系统资源,Connection
对象本身并没有释放 。 因此,一个关闭的 Connection
对象还可以接着用 Open方法打开,而不用再次创建 。
2,Close方法
3,BeginTrans方法
4,CommitTrans方法
5,Execute方法
6,RollbackTrans方法
RollbackTrans方法和 CommitTrans方法相反,它是取消此次事务以来对数据源所做的所有操作,并不写入数据源 。
15.2.2 Connection对象的属性
Connection 对象的属性包括 Attributes,
CommandTimeout,ConnectionString,
ConnectionTimeout,CursorLocation,
DefaultDatabase,IsolationLevel,Mode,
Provider,State,Version等 。
Connection对象提供 Errors,Properties两种数据集合 。 前者表示 Connection对象运行时最近一次的错误或警告信息,后者表示 Connection对象所定义的相关属性 。
15.2.3 Connection对象的数据集合
15.3 Request对象属性
( 1) Open方法 Open方法是用来打开一个给予
ActiveConnection和 Source属性的 Recordset。
( 2) Close方法 Close方法用于关闭 Recordset对象并释放相关资源 。
( 3) Clone方法 Clone方法用来创建一个 Recordset
对象的完全拷贝 。
1,Request对象属性
15.3.1 Recordset对象的方法
2,刷新,移动数据的方法
BOF属性:当前游标指到 Recordset的第一笔 。
EOF属性:当前游标指到 Recordset的最后一笔 。
Move方法:移动游标到 Recordset中的某一个记录 。
AbsolutePosition属性:当前游标所在 Recordset中的位置 。
Bookmark ( 书签 ) 属性:在 Recordset中的一条记录做一个标记 。
( 1) addNew方法 addNew方法用来向数据库中增加新纪录 。
( 2) Delete方法 Delete方法用来删除当前记录 。
( 3) Update方法 Update方法表示将对 Recordset对象中的当前记录的任何修改保存在数据源中 。
( 4) CancelUpdate方法 CancelUpdate方法用来取消在调用 Update方法前所作的一切修改 。
( 5) UpdateBatch方法 该方法将取消对 Recordset的修改 。
3,编辑修改数据的方法该属性指示要被调度返回服务器的记录 。
1,MarshalOptions属性
15.3.2 Recordset对象的属性该属性指定当前记录所在的页 。
2,AbsolutePage属性该属性指定 Recordset对象当前记录的序号位置 。
3,AbsolutePosition属性该属性返回唯一标识 Recordset对象中当前记录的书签,或者将 Reeordset对象的当前记录设置为由有效书签所标识的记录 。
4,Bookmark属性该属性指示缓存在本地内存中的 Recordset对象的记录数 。
5,CacheSize属性该属性指示缓存在本地内存中的 Recordset对象的记录数 。
5,CacheSize 属性该属性指示在 Recordset对象中使用的游标类型 。
6,CursorType属性该属性为 Recordset中的数据指定筛选条件 。
7,Filter属性该属性指示对 Recordset对象当前生效的索引的名称 。
8,Index属性该属性指示编辑过程中对记录使用的锁定类型 。
9,LockType属性该属性指示通过查询返回 Recordset记录的最大数目 。
10,MaxRecords属性该属性指示 Recordset对象包含的数据页数 。 。
11,PageCount属性该属性指示 Recordset中一页所包含的记录数 。
12,PageSize属性该属性指示 Recordset对象中记录的当前数目 。
13,RecordCount属性该属性指定一个或多个 Recordset对象中排序的字段名,并指定按升序还是降序对字段进行排序 。
14,Sort属性该属性指示 Recordset对象中数据的来源 。
15,Source属性该属性对所有可应用对象,说明其对象状态是打开或是关闭 。
16,State属性
15.3.3 RecordSet对象的数据集合
RecordSet对象的数据集合包括 Field数据集合,
Properties数据集合 。 由于 Fields数据集合中包括
RecordSet 对象的所有 Field 数 据 字 段 对 象 ;
Properties数据集合包含 RecordSet对象所有属性 。
关于数据集合的内容将在后面介绍 。
15.4 Command对象
CreateParameter方法使用指定属性创建新的
Parameter对象,并在执行之前加到 Command对象的 Parameter集合中 。 Parameter对象表示传给 SQL
语句或存储进程的一个数 。
15.4.1 Command对象的方法
1,CreateParameter方法该方法执行在 CommandText属性中指定的查询,
SQL 语句 或存储 过程 。 其方法 与 Connection 的
Execute方法类似 。
2,Execute方法该属性指示指定的 Command或 Recordset对象当前所属的 Connection对象 。
15.4.2 Command的属性
1,ActiveConnection属性该属性包含要根据提供者发送的命令的文本 。
2,CommandText属性该属性指示在终止尝试和产生错误之前执行命令期间需等待的时间 。
3,CommandTimeout属性该属性指示 Command对象的类型 。
4,CommandType属性该属性可以指示执行前是否保存命令的编译版本 。
5,Prepared属性
Append方法将对象追加到集合中 。 如果集合是
Fields,可以先创建新的 Field对象然后再将其追加到集合中 。
15.5 Fields集合和 Field对象
15.5.1 Fields集合的方法及属性
1,Append方法
Item方法根据名称或序号返回集合的特定成员 。
2,Item方法
Delete方法表示从 Fields集合中删除对象 。
3,Delete方法该方法更新集合中的对象以便反映来自提供者的可用对象和特定于提供者的对象 。
4,Refresh方法
Fields集合的属性只有 Count属性,它指示集合中对象的数目 。
5,Fields集合的属性该方法将数据追加到大型文本,二进制数据 Field
或 Parameter对象 。
15.5.2 Field对象的方法
1,AppendChunk方法该方法返回大型文本或二进制数据 Field对象的全部或部分内容 。
2,GetChunk方法该属性指示字段的值的实际长度 。
15.5.3 Field对象的属性
1,AppendChunk方法该属性指示 Field对象所定义的大小 。
2,DefinedSize属性
Name属性指示对象的名称 。
3,Name属性该属性指出 Parameter或 Field对象中数字值的范围 。
4,NumericScale属性该属性指示发生任何更改前已在记录中存在的
Field的值 。
5,OriginalValue属性该属性指示在 Parameter对象中数字值或数字 Field
对象的精度 。
6,Precision属性该属性指示数据库中 Field对象的当前值 。
7,UnderlyingValue属性
Value 属 性 指 示 赋 给 Field,Parameter 或
Property对象的值 。
8,Value属性
Properties 集 合 是 包 含 特 定 对 象 实 例 的 所 有
Property 对象,有时候也称为 Properties数据集合对象 。 包括 Count属性,Refresh方法,Item方法等 。
Count属性用来取得 Properties集合中包含的
Property对象个数 。
Refresh方法用来重新取得 Properties数据集合中所有的 Property对象个数 。
Item方法用来取得 Properties集合中的 Property对象 。
15.6 Properties数据集合和 Property对象
15.6.1 Properties数据集合
Property对象主要是用来记录相应 ADO对象的每一项属性值,包括了 Name属性,Value属性,Type属性,Attributes属性等 。
Name属性表示对象属性的名称 。
Value属性表示对象的属性值 。
Type属性表示对象属性的数据类型 。
Attributes属性表示对象的特性 。
15.6.2 Property对象该方法将对象追加到集合中 。 如果集合是 Fields,
可以先创建新的 Filed对象然后再将其追加到集合中 。
15.7 Parameters集合和 Parameter对象
15.7.1 Parameters集合的方法
1,Append方法该方法从 Parameters集合中删除对象 。
2,Delete方法
Count属性;它指示集合中对象的数目 。
Item属性:它用来返回集合中某一个参数 。 它有一个索引值,它即可以是所要的参数在 Parameters集合中的参数值,也可以是参数的名字 。
15.7.2 Parameter集合的属性
AppendChunk方法该方法将数据追加到大型文本,二进制数据
Field或 Parameter对象 。
15.7.3 Parameter对象的方法该属性指示 Parameter所标明的是输入参数,输出参数还是既是输出又是输入参数或该参数是否为存储过程返回的值 。
15.7.4 Parameter对象的属性
1,Direction属性
Name属性指示对象的名称 。
2,Name属性该属性指出 Parameter或 Held对象中数字值的范围 。
3,NumericScale属性该属性指示在 Parameter对象中数字值或数字 Field
对象的精度 。
4,Precision属性该属性表示 Parameter对象的最大大小 ( 按字节或字符 ) 。
5,Size属性该属性指示赋给 Field,Parameter或 Property对象的值 。
6,Value属性
Errors数据集合,也称 Errors数据集合对象,包含在响应涉及提供者的单个失败时产生的所有 Error
对象 。 包括 Count属性,Clear方法,Item方法 。
15.8 Errors集合和 Error对象
15.8.1 Errors数据集合
Error对象负责记录存储一个系统运行时发生的错误或警告 。 Error 对象提供了 Description 属性,
Number 属性,Source 属性,NativeError 属性,
SQLState属性,HelpContext属性,HelpFile属性等 。
15.8.2 Error对象
15.9 利用 ADO实现新闻发布系统
15.9.1 数据库的建立
15.9.2 程序源代码
E N D