<完整記錄對象參考
Open方法打開,讓您可以訪問記錄表,查詢的結果,或將保存的記錄數據庫元素。
Tip:用它,釋放系統資源後,請務必關閉Recordset對象。 Recordset對象設置為Nothing從內存中完全消除。
句法
objRecordset.Open source,actconn,cursortyp,locktyp,opt
參數 | 描述 |
---|
source | 可選的。 指定的數據源。 源參數可以是下列之一: - 一個URL
- 的相對/完整的文件路徑名
- 命令對象
- 一個SQL語句
- 存儲過程
- 表名
|
actconn | 可選的。 連接字符串或連接對象 |
cursortyp | 可選的。 一個CursorTypeEnum值,指定類型的光標使用時打開Recordset對象。 默認值是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是一個命令或存儲過程返回單行應該返回作為記錄對象 |
<完整記錄對象參考