<完整记录对象参考
Open方法打开,让您可以访问记录表,查询的结果,或将保存的记录数据库元素。
Tip:用它,释放系统资源后,请务必关闭Recordset对象。 Recordset对象设置为Nothing从内存中完全消除。
句法
objRecordset.Open source,actconn,cursortyp,locktyp,opt
参数 | 描述 |
---|
source | 可选的。 指定的数据源。 源参数可以是下列之一: - 一个URL
- 的相对/完整的文件路径名
- 命令对象
- 一个SQL语句
- 存储过程
- 表名
|
actconn | 可选的。 连接字符串或连接对象 |
cursortyp | 可选的。 甲CursorTypeEnum指定光标的类型值打开一个记录对象时使用。 默认值是adOpenForwardOnly |
locktyp | 可选的。 甲LockTypeEnum值,指定锁定一个记录对象的类型。 默认值是ADLOCKREADONLY |
opt | 可选的。 规定如何,如果它不是一个Command对象评估源参数。 可以是一个或多个CommandTypeEnum之中或ExecuteOptionEnum的值。 |
例
Open an ADO Table Recordset:
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "Customers", conn
%>
Open an ADO SQL Recordset:
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "Select * from Customers", conn
%>
CursorTypeEnum值
不变 | 值 | 描述 |
---|
adOpenUnspecified | -1 | 未指定类型的游标 |
adOpenForwardOnly | 0 | 默认。 一个只进游标。 当你需要通过一个记录集仅做一个通这样可以提高性能 |
adOpenKeyset | 1 | 键集游标。 就像一个动态游标,但你不能看到其他用户添加的记录,尽管其他用户删除的记录从您的Recordset不可访问。 其他用户的数据更改依然可见。 |
adOpenDynamic | 2 | 动态游标。 添加,更改和其他用户删除是可见的,并通过记录所有类型的运动被允许 |
adOpenStatic | 3 | 静态游标。 一组可以用来查找数据或生成报表的记录的静态副本。 添加,更改或由其他用户删除是不可见的。 |
LockTypeEnum值
不变 | 值 | 描述 |
---|
adLockUnspecified | -1 | 未指定类型的锁。 克隆继承从原来的记录锁定类型。 |
adLockReadOnly | 1 | 默认。 只读记录 |
adLockPessimistic | 2 | 悲观锁定,通过记录记录。 提供者锁定记录编辑后立即 |
adLockOptimistic | 3 | 乐观锁,通过记录记录。 该供应商锁定只记录通话时更新 |
adLockBatchOptimistic | 4 | 乐观批更新。 需要批量更新模式 |
CommandTypeEnum之中价值观
不变 | 值 | 描述 |
---|
adCmdUnspecified | -1 | 未指定类型的命令 |
adCmdText | 1 | CommandText作为一个命令的文本定义或存储过程调用 |
adCmdTable | 2 | CommandText作为其列由SQL查询返回的表名 |
adCmdStoredProc | 4 | CommandText作为存储过程的名称 |
adCmdUnknown | 8 | 默认。 未知类型的命令 |
adCmdFile | 256 | CommandText作为一个永久存储的Recordset的文件名。 它仅适用Recordset.Open或重新查询。 |
adCmdTableDirect | 512 | CommandText作为其列全部返回的表名。 它仅适用Recordset.Open或重新查询。 要使用Seek方法,那么Recordset必须以adCmdTableDirect打开。 不能与ExecuteOptionEnum的价值adAsyncExecute结合。 |
ExecuteOptionEnum的价值观
不变 | 值 | 描述 |
---|
adOptionUnspecified | -1 | 未指定命令 |
adAsyncExecute | 16 | 该命令应异步执行。 不能与CommandTypeEnum之中值相结合adCmdTableDirect |
adAsyncFetch | 32 | 在CacheSize属性中指定的初始量后的剩余的行是否应该异步获取 |
adAsyncFetchNonBlocking | 64 | 主线程不会阻塞在检索。 如果请求的行尚未提取,当前行自动移动到文件的末尾。 如果从包含永久存储的Recordset的Stream打开Recordset,那么adAsyncFetchNonBlocking将不会产生影响; 操作将是同步的和阻塞。 adAsynchFetchNonBlocking将当adCmdTableDirect选项用于打开记录没有影响 |
adExecuteNoRecords | 128 | 命令文本是一个命令或者不返回行的存储过程。 如果任何行被检索,它们将被放弃,并没有回来。 adExecuteNoRecords只能作为可选参数到命令或连接Execute方法传递 |
adExecuteStream | 256 | 命令执行的结果应被返回作为流。 adExecuteStream只能作为可选参数被传递给命令执行方法 |
adExecuteRecord | 512 | 在CommandText是一个命令或存储过程返回单行应该返回作为记录对象 |
<完整记录对象参考