目录
一、Command 对象
1.Command 对象
2.语法
3.属性
4.方法
5.集合
二、Connection 对象
1.Connection 对象
2.语法
3.属性
4.方法
5.事件
6.集合
三、Error 对象
1.Error 对象
2.语法
3.属性
四、Parameter 对象
1.Field 对象
2.语法
3.属性
4.方法
5.集合
五、Parameter 对象
1.Parameter 对象
2.语法
3.属性
4.方法
六、Property 对象
1.Property 对象
2.语法
3.属性
七、Record 对象
1.Record 对象
2.语法
3.属性
4.方法
5.集合
八、Recordset 对象
1.Recordset 对象
2.语法
3.属性
4.方法
5.事件
九、Stream 对象
1.Stream 对象
2.语法
3.属性
十、附加
1.Fields 集合的属性
2.Properties 集合的属性
Command 对象用于执行面向数据库的一次简单查询。此查询可执行诸如创建、添加、取回、删除或更新记录等动作。主要特性是有能力使用存储查询和带有参数的存储过程。
set objCommand=Server.CreateObject("ADODB.command")
属性 |
描述 |
ActiveConnection |
设置或返回包含了定义连接或 Connection 对象的字符串。 |
CommandText |
设置或返回包含提供者(provider)命令(如 SOL 语句、表格名称或存储的过程调用)的字符串值。默认值为 ""(零长度字符串)。 |
CommandTimeout |
设置或返回长整型值,该值指示等待命令执行的时间(单位为秒)。默认值为 30。 |
CommandType |
设置或返回一个 Command 对象的类型 |
Name |
设置或返回一个 Command 对象的名称 |
Prepared |
指示执行前是否保存命令的编译版本(已经准备好的版本)。 |
State |
返回一个值,此值可描述该 Command 对象处于打开、关闭、连接、执行还是取回数据的状态。 |
方法 |
方法描述 |
Cancel |
取消一个方法的一次执行。 |
CreateParameter |
创建一个新的 Parameter 对象 |
Execute |
执行 CommandText 属性中的查询、SQL 语句或存储过程。 |
集合 |
描述 |
Parameters |
包含一个 Command 对象的所有 Parameter 对象。 |
Properties |
包含一个 Command 对象的所有 Property 对象。 |
Connection 对象用于创建一个到达某个数据源的开放连接。通过此连接,可以对一个数据库进行访问和操作。
如果需要多次访问某个数据库,应当使用 Connection 对象来建立一个连接。也可以经由一个 Command 或 Recordset 对象传递一个连接字符串来创建某个连接。不过,此类连接仅仅适合一次具体的简单的查询。
set objConnection=Server.CreateObject("ADODB.connection")
属性 |
描述 |
Attributes |
设置或返回 Connection 对象的属性。 |
CommandTimeout |
指示在终止尝试和产生错误之前执行命令期间需等待的时间。 |
ConnectionString |
设置或返回用于建立连接数据源的细节信息。 |
ConnectionTimeout |
指示在终止尝试和产生错误前建立连接期间所等待的时间。 |
CursorLocation |
设置或返回游标服务的位置。 |
DefaultDatabase |
指示 Connection 对象的默认数据库。 |
IsolationLevel |
指示 Connection 对象的隔离级别。 |
Mode |
设置或返回 provider 的访问权限。 |
Provider |
设置或返回 Connection 对象提供者的名称。 |
State |
返回一个描述连接是打开还是关闭的值。 |
Version |
返回 ADO 的版本号。 |
方法 |
描述 |
BeginTrans |
开始一个新事务。 |
Cancel |
取消一次执行。 |
Close |
关闭一个连接。 |
CommitTrans |
保存任何更改并结束当前事务。 |
Execute |
执行查询、SQL 语句、存储过程或 provider 具体文本。 |
Open |
打开一个连接。 |
OpenSchema |
从 provider 返回有关数据源的 schema 信息。 |
RollbackTrans |
取消当前事务中所作的任何更改并结束事务。 |
事件 |
事件描述 |
BeginTransComplete |
在 BeginTrans 操作之后被触发。 |
CommitTransComplete |
在 CommitTrans 操作之后被触发。 |
ConnectComplete |
在一个连接开始后被触发。 |
Disconnect |
在一个连接结束之后被触发。 |
ExecuteComplete |
在一条命令执行完毕后被触发。 |
InfoMessage |
假如在一个 ConnectionEvent 操作过程中警告发生,则触发该事件。 |
RollbackTransComplete |
在 RollbackTrans 操作之后被触发。 |
WillConnect |
在一个连接开始之前被触发。 |
WillExecute |
在一条命令被执行之前被触发。 |
集合 |
集合描述 |
Errors |
包含 Connection 对象的所有 Error 对象。 |
Properties |
包含 Connection 对象的所有 Property 对象。 |
Error 对象包含与单个操作(涉及提供者)有关的数据访问错误的详细信息。
ADO 会因每次错误产生一个 Error 对象。每个 Error 对象包含具体错误的详细信息,且 Error 对象被存储在 Errors 集合中。要访问这些错误,就必须引用某个具体的连接。
循环遍历 Errors 集合:
<%
for each objErr in objConn.Errors
response.write("
")
response.write("Description: ")
response.write(objErr.Description & "
")response.write("Help context: ")
response.write(objErr.HelpContext & "
")response.write("Help file: ")
response.write(objErr.HelpFile & "
")response.write("Native error: ")
response.write(objErr.NativeError & "
")response.write("Error number: ")
response.write(objErr.Number & "
")response.write("Error source: ")
response.write(objErr.Source & "
")response.write("SQL state: ")
response.write(objErr.SQLState & "
")response.write("
")next
%>
objErr.property
属性 |
描述 |
Description |
返回一个错误描述。 |
HelpContext |
返回 Microsoft Windows help system 中某个主题的内容 ID。 |
HelpFile |
返回 Microsoft Windows help system 中帮助文件的完整路径。 |
NativeError |
返回来自 provider 或数据源的错误代码。 |
Number |
返回可标识错误的一个唯一的数字。 |
Source |
返回产生错误的对象或应用程序的名称。 |
SQLState |
返回一个 5 字符的 SQL 错误码。 |
ADO Field 对象包含有关 Recordset 对象中某一列的信息。Recordset 中的每一列对应一个 Field 对象。
set objField=Server.CreateObject("ADODB.field")
属性 |
描述 |
ActualSize |
返回一个字段值的实际长度。 |
Attributes |
设置或返回 Field 对象的属性。 |
DefinedSize |
返回Field 对象被定义的大小 |
Name |
设置或返回 Field 对象的名称。 |
NumericScale |
设置或返回 Field 对象中的值所允许的小数位数。 |
OriginalValue |
返回某个字段的原始值。 |
Precision |
设置或返回当表示 Field 对象中的数值时所允许的数字的最大数。 |
Status |
返回 Field 对象的状态。 |
Type |
设置或返回 Field 对象的类型。 |
UnderlyingValue |
返回一个字段的当前值。 |
Value |
设置或返回 Field 对象的值。 |
方法 |
描述 |
AppendChunk |
把大型的二进制或文本数据追加到 Field 对象 |
GetChunk |
返回大型二进制或文本 Field 对象的全部或部分内容。 |
集合 |
描述 |
Properties |
包含一个 Field 对象的所有 Property 对象。 |
Parameter 对象可提供有关被用于存储过程或查询中的一个单个参数的信息。在其被创建时被添加到 Parameters 集合。Parameters 集合与一个具体的 Command 对象相关联,Command 对象使用此集合在存储过程和查询内外传递参数。
参数被用来创建参数化的命令。这些命令(在它们已被定义和存储之后)使用参数在命令执行前来改变命令的某些细节。例如,SQL SELECT 语句可使用参数定义 WHERE 子句的匹配条件,而使用另一个参数来定义 SORT BY 子句的列的名称。
有四种类型的参数:input 参数、output 参数、input/output 参数 以及 return 参数。
objectname.property
objectname.method
属性 |
描述 |
Attributes |
设置或返回一个 Parameter 对象的属性。 |
Direction |
设置或返回某个参数如何传递到存储过程或从存储过程传递回来。 |
Name |
设置或返回一个 Parameter 对象的名称。 |
NumericScale |
设置或返回一个 Parameter 对象的数值的小数点右侧的数字数目。 |
Precision |
设置或返回当表示一个参数中数值时所允许数字的最大数目。 |
Size |
设置或返回 Parameter 对象中的值的最大大小(按字节或字符)。 |
Type |
设置或返回一个 Parameter 对象的类型。 |
Value |
设置或返回一个 Parameter 对象的值。 |
方法 |
描述 |
AppendChunk |
把长二进制或字符数据追加到一个 Parameter 对象。 |
Delete |
从 Parameters 集合中删除一个对象。 |
ADO 对象有两种类型的属性:内置属性和动态属性。
内置属性是在 ADO 中实现并立即可用于任何新对象的属性,此时使用 MyObject.Property 语法。它们不会作为 Property 对象出现在对象的 Properties 集合中,因此,虽然可以更改它们的值,但无法更改它们的特性。
Property 对象表示 ADO 对象的动态特性,这种动态特性是被 provider 定义的。
每个与 ADO 对话的 provider 拥有不同的方式与 ADO 进行交互。所以,ADO 需要通过某种方式来存储有关 provider 的信息。解决方法是 provider 为 ADO 提供具体的信息(动态属性)。ADO 把每个 provider 属性存储在一个 Property 对象中,而 Property 对象相应地也被存储在 Properties 集合中。此集合会被分配到 Command 对象、Connection 对象、Field 对象 或者 Recordset 对象。
例如,指定给提供者的属性可能会指示 Recordset 对象是否支持事务或更新。这些附加的属性将作为 Property 对象出现在该 Recordset 对象的 Properties 集合中。
set objProperty=Server.CreateObject("ADODB.property")
属性 |
描述 |
Attributes |
返回一个 Property 对象的属性 |
Name |
设置或返回一个 Property 对象的名称 |
Type |
返回 Property 的类型 |
Value |
设置或返回 一个 Property 对象的值 |
Record 对象用于容纳记录集中的一行、或文件系统的一个文件或一个目录。允许访问行与行之间的列数且/或数据类型不同的数据集。
objectname.property
objectname.method
属性 |
描述 |
ActiveConnection |
设置或返回 Record 对象当前所属的 Connection 对象。 |
Mode |
设置或返回在Record 对象中修改数据的有效权限。 |
ParentURL |
返回父 Record 的绝对URL。 |
RecordType |
返回 Record 对象的类型。 |
Source |
设置或返回 Record 对象的 Open 方法的 src 参数。 |
State |
返回 Record 对象的状态。 |
方法 |
描述 |
Cancel |
取消一次 CopyRecord、DeleteRecord、MoveRecord 或 Open 调用的执行。 |
Close |
Close 关闭一个 Record 对象。 |
CopyRecord |
把文件或目录拷贝到另外一个位置。 |
DeleteRecord |
删除一个文件或目录。 |
GetChildren |
返回一个 Recordset 对象,其中的每一行表示目录中的文件或子目录。 |
MoveRecord |
把文件或目录移动到另外一个位置。 |
Open |
打开一个已有的 Record 对象或创建一个新的文件或目录。 |
集合 |
描述 |
Properties |
特定提供者属性的一个集合。 |
Fields |
包含 Record 对象中的所有 Field 对象。 |
Recordset 对象用于容纳一个来自数据库表的记录集。一个 Recordset 对象由记录和列(字段)组成。在 ADO 中,此对象是最重要且最常用于对数据库的数据进行操作的对象。
set objRecordset=Server.CreateObject("ADODB.recordset")
首次打开一个 Recordset 时,当前记录指针将指向第一个记录,同时 BOF 和 EOF 属性为 False。如果没有记录,BOF 和 EOF 属性为 True。
Recordset 对象能够支持两种更新类型:
立即更新 - 一旦调用 Update 方法,所有更改被立即写入数据库。
批更新 - provider 将缓存多个更改,然后使用 UpdateBatch 方法把这些更改传送到数据库。
在 ADO,定义了 4 中不同的游标(指针)类型:
动态游标 - 允许您查看其他用户所作的添加、更改和删除
键集游标 - 类似动态游标,不同的是您无法查看有其他用户所做的添加,并且它会防止您访问其他用户已删除的记录。其他用户所做的数据更改仍然是可见的。
静态游标 - 提供记录集的静态副本,可用来查找数据或生成报告。此外,由其他用户所做的添加、更改和删除将是不可见的。当您打开一个客户端 Recordset 对象时,这是唯一被允许的游标类型。
仅向前游标 - 只允许在 Recordset 中向前滚动。此外,由其他用户所做的添加、更改和删除将是不可见的。
可通过 CursorType 属性或 Open 方法中的 CursorType 参数来设置游标的类型。
属性 |
属性描述 |
AbsolutePage |
设置或返回一个可指定 Recordset 对象中页码的值。 |
AbsolutePosition |
设置或返回一个值,此值可指定 Recordset 对象中当前记录的顺序位置(序号位置)。 |
ActiveCommand |
返回与 Recordset 对象相关联的 Command 对象。 |
ActiveConnection |
如果连接被关闭,设置或返回连接的定义,如果连接打开,设置或返回当前的 Connection 对象。 |
BOF |
如果当前的记录位置在第一条记录之前,则返回 true,否则返回 fasle。 |
Bookmark |
设置或返回一个书签。此书签保存当前记录的位置。 |
CacheSize |
设置或返回能够被缓存的记录的数目。 |
CursorLocation |
设置或返回游标服务的位置。 |
CursorType |
设置或返回一个 Recordset 对象的游标类型。 |
DataMember |
设置或返回要从 DataSource 属性所引用的对象中检索的数据成员的名称。 |
DataSource |
指定一个包含要被表示为 Recordset 对象的数据的对象。 |
EditMode |
返回当前记录的编辑状态。 |
EOF |
如果当前记录的位置在最后的记录之后,则返回 true,否则返回 fasle。 |
Filter |
返回一个针对 Recordset 对象中数据的过滤器。 |
Index |
设置或返回 Recordset 对象的当前索引的名称。 |
LockType |
设置或返回当编辑 Recordset 中的一条记录时,可指定锁定类型的值。 |
MarshalOptions |
设置或返回一个值,此值指定哪些记录被返回服务器。 |
MaxRecords |
设置或返回从一个查询返回 Recordset 对象的的最大记录数目。 |
PageCount |
返回一个 Recordset 对象中的数据页数。 |
PageSize |
设置或返回 Recordset 对象的一个单一页面上所允许的最大记录数。 |
RecordCount |
返回一个 Recordset 对象中的记录数目。 |
Sort |
设置或返回一个或多个作为 Recordset 排序基准的字段名。 |
Source |
设置一个字符串值,或一个 Command 对象引用,或返回一个字符串值,此值可指示 Recordset 对象的数据源。 |
State |
返回一个值,此值可描述是否 Recordset 对象是打开、关闭、正在连接、正在执行或正在取回数据。 |
Status |
返回有关批更新或其他大量操作的当前记录的状态。 |
StayInSync |
设置或返回当父记录位置改变时对子记录的引用是否改变。 |
方法 |
描述 |
AddNew |
创建一条新记录。 |
Cancel |
撤销一次执行。 |
CancelBatch |
撤销一次批更新。 |
CancelUpdate |
撤销对 Recordset 对象的一条记录所做的更改。 |
Clone |
创建一个已有 Recordset 的副本。 |
Close |
关闭一个 Recordset。 |
CompareBookmarks |
比较两个书签。 |
Delete |
删除一条记录或一组记录。 |
Find |
搜索一个 Recordset 中满足指定某个条件的一条记录。 |
GetRows |
把多条记录从一个 Recordset 对象中拷贝到一个二维数组中。 |
GetString |
将 Recordset 作为字符串返回。 |
Move |
在 Recordset 对象中移动记录指针。 |
MoveFirst |
把记录指针移动到第一条记录。 |
MoveLast |
把记录指针移动到最后一条记录。 |
MoveNext |
把记录指针移动到下一条记录。 |
MovePrevious |
把记录指针移动到上一条记录。 |
NextRecordset |
通过执行一系列命令清除当前 Recordset 对象并返回下一个 Recordset。 |
Open |
打开一个数据库元素,此元素可提供对表的记录、查询的结果或保存的 Recordset 的访问。 |
Requery |
通过重新执行对象所基于的查询来更新 Recordset 对象中的数据。 |
Resync |
从原始数据库刷新当前 Recordset 中的数据。 |
Save |
把 Recordset 对象保存到 file 或 Stream 对象中。 |
Seek |
搜索 Recordset 的索引以快速定位与指定的值相匹配的行,并使其成为当前行。 |
Supports |
返回一个布尔值,此值可定义 Recordset 对象是否支持特定类型的功能。 |
Update |
保存所有对 Recordset 对象中的一条单一记录所做的更改。 |
UpdateBatch |
把所有 Recordset 中的更改存入数据库。请在批更新模式中使用。 |
事件 |
描述 |
EndOfRecordset |
当试图移动到超过 Recordset 结尾的行时被触发。 |
FetchComplete |
当异步操作中的所有记录均被读取后被触发。 |
FetchProgress |
在异步操作期间被定期地触发,报告已读取多少记录。 |
FieldChangeComplete |
Field对象的值更改被触发。 |
MoveComplete |
Recordset中的当前位置更改后被触发。 |
RecordChangeComplete |
一条记录更改之后被触发。 |
RecordsetChangeComplete |
在 Recordset 更改之后被触发。 |
WillChangeField |
在 Field 对象的值更改之前被触发 |
WillChangeRecord |
在一条记录更改之前被触发。 |
WillChangeRecordset |
在 Recordset 更改之前被触发。 |
WillMove |
在 Recordset 中的当前位置更改之前被触发。 |
Stream 对象用于读写以及处理二进制数据或文本流。
通过三种方法获得:
1.通过指向包含二进制或文本数据的对象(通常是文件)的 URL。此对象可以是简单的文档、表示结构化文档的 Record 对象或文件夹。
2.通过将 Stream 对象实例化。这些 Stream 对象可用来存储用于应用程序的数据。跟与 URL 相关联的 Stream 或 Record 的默认 Stream 不同,实例化的 Stream 在默认情况下与基本源没有关联。
3.通过打开与 Record 对象相关联的默认 Stream 对象。打开 Record 时便可获取与 Record 对象相关联的默认流。只需打开该流便可删除一个往返过程。
objectname.property
objectname.method
属性 |
描述 |
CharSet |
指定用于存储 Stream 的字符集。 |
EOS |
返回当前位置是否位于流的结尾。 |
LineSeparator |
设置或返回用在文本 Stream 对象中的分行符。 |
Mode |
设置或返回供修改数据的可用权限。 |
Position |
设置或返回从 Stream 对象开始处的当前位置(按字节计算)。 |
Size |
返回一个打开的 Stream 对象的大小。 |
State |
返回一个描述 Stream 是打开还是关闭的值。 |
Type |
设置或返回 Stream 对象中的数据的类型。 |
方法
方法 |
描述 |
Cancel |
取消对 Stream 对象的 Open 调用的执行。 |
Close |
关闭一个 Stream 对象。 |
CopyTo |
把指定数目的字符/比特从一个 Stream 对象拷贝到另外一个 Stream 对象。 |
Flush |
把 Stream 缓冲区中的内容发送到相关联的下层对象。 |
LoadFromFile |
把文件的内容载入 Stream 对象。 |
Open |
打开一个 Stream 对象。 |
Read |
从一个二进制 Stream 对象读取全部流或指定的字节数。 |
ReadText |
从一个文本 Stream 对象中读取全部流、一行或指定的字节数。 |
SaveToFile |
把一个 Stream 对象的二进制内容保存到某个文件。 |
SetEOS |
设置当前位置为流的结尾 (EOS) |
SkipLine |
在读取一个文本流时跳过一行。 |
Write |
把二进制数据写到一个二进制 Stream 对象。 |
WriteText |
把字符数据写到一个文本 Stream 对象。 |
属性 |
描述 |
Count |
返回 fields 集合中的项目数。起始值为 0。例子: countfields = rec.Fields.Count |
Item(named_item/number) |
返回 fields 集合中的某个指定的项目。例子: itemfields = rec.Fields.Item(1) 或者itemfields = rec.Fields.Item("Name") |
属性 |
描述 |
Count |
返回 properties 集合中项目的数目。以 0 起始。例子: countprop = rs.Properties.Count |
Item(named_item/number) |
返回 properties 集合中某个指定的项目。例子:itemprop = rs.Properties.Item(1) 或者itemprop = rs.Properties.Item("Name") |