使用 ADO 時,通過 Recordset 對象可對幾乎所有數(shù)據(jù)進行操作。
GetRows
本例演示如何使用 GetRows 方法。
ADO Recordset 對象用于容納一個來自數(shù)據(jù)庫表的記錄集。一個 Recordset 對象由記錄和列(字段)組成。
在 ADO 中,此對象是最重要且最常用于對數(shù)據(jù)庫的數(shù)據(jù)進行操作的對象。
當您首次打開一個 Recordset 時,當前記錄指針將指向第一個記錄,同時 BOF 和 EOF 屬性為 False。如果沒有記錄,BOF 和 EOF 屬性為 True。
Recordset 對象能夠支持兩種更新類型:
在 ADO,定義了 4 中不同的游標(指針)類型:
可通過 CursorType 屬性或 Open 方法中的 CursorType 參數(shù)來設置游標的類型。
注釋:并非所有的提供者(providers)支持 Recordset 對象的所有方法和屬性。
屬性 | 描述 |
---|---|
AbsolutePage | 設置或返回一個可指定 Recordset 對象中頁碼的值。 |
AbsolutePosition | 設置或返回一個值,此值可指定 Recordset 對象中當前記錄的順序位置(序號位置)。 |
ActiveCommand | 返回與 Recordset 對象相關聯(lián)的 Command 對象。 |
ActiveConnection | 如果連接被關閉,設置或返回連接的定義,如果連接打開,設置或返回當前的 Connection 對象。 |
BOF | 如果當前的記錄位置在第一條記錄之前,則返回 true,否則返回 fasle。 |
Bookmark | 設置或返回一個書簽。此書簽保存當前記錄的位置。 |
CacheSize | 設置或返回能夠被緩存的記錄的數(shù)目。 |
CursorLocation | 設置或返回游標服務的位置。 |
CursorType | 設置或返回一個 Recordset 對象的游標類型。 |
DataMember | 設置或返回要從 DataSource 屬性所引用的對象中檢索的數(shù)據(jù)成員的名稱。 |
DataSource | 指定一個包含要被表示為 Recordset 對象的數(shù)據(jù)的對象。 |
EditMode | 返回當前記錄的編輯狀態(tài)。 |
EOF | 如果當前記錄的位置在最后的記錄之后,則返回 true,否則返回 fasle。 |
Filter | 返回一個針對 Recordset 對象中數(shù)據(jù)的過濾器。 |
Index | 設置或返回 Recordset 對象的當前索引的名稱。 |
LockType | 設置或返回當編輯 Recordset 中的一條記錄時,可指定鎖定類型的值。 |
MarshalOptions | 設置或返回一個值,此值指定哪些記錄被返回服務器。 |
MaxRecords | 設置或返回從一個查詢返回 Recordset 對象的的最大記錄數(shù)目。 |
PageCount | 返回一個 Recordset 對象中的數(shù)據(jù)頁數(shù)。 |
PageSize | 設置或返回 Recordset 對象的一個單一頁面上所允許的最大記錄數(shù)。 |
RecordCount | 返回一個 Recordset 對象中的記錄數(shù)目。 |
Sort | 設置或返回一個或多個作為 Recordset 排序基準的字段名。 |
Source | 設置一個字符串值,或一個 Command 對象引用,或返回一個字符串值,此值可指示 Recordset 對象的數(shù)據(jù)源。 |
State | 返回一個值,此值可描述是否 Recordset 對象是打開、關閉、正在連接、正在執(zhí)行或正在取回數(shù)據(jù)。 |
Status | 返回有關批更新或其他大量操作的當前記錄的狀態(tài)。 |
StayInSync | 設置或返回當父記錄位置改變時對子記錄的引用是否改變。 |
方法 | 描述 |
---|---|
AddNew | 創(chuàng)建一條新記錄。 |
Cancel | 撤銷一次執(zhí)行。 |
CancelBatch | 撤銷一次批更新。 |
CancelUpdate | 撤銷對 Recordset 對象的一條記錄所做的更改。 |
Clone | 創(chuàng)建一個已有 Recordset 的副本。 |
Close | 關閉一個 Recordset。 |
CompareBookmarks | 比較兩個書簽。 |
Delete | 刪除一條記錄或一組記錄。 |
Find | 搜索一個 Recordset 中滿足指定某個條件的一條記錄。 |
GetRows | 把多條記錄從一個 Recordset 對象中拷貝到一個二維數(shù)組中。 |
GetString | 將 Recordset 作為字符串返回。 |
Move | 在 Recordset 對象中移動記錄指針。 |
MoveFirst | 把記錄指針移動到第一條記錄。 |
MoveLast | 把記錄指針移動到最后一條記錄。 |
MoveNext | 把記錄指針移動到下一條記錄。 |
MovePrevious | 把記錄指針移動到上一條記錄。 |
NextRecordset | 通過執(zhí)行一系列命令清除當前 Recordset 對象并返回下一個 Recordset。 |
Open | 打開一個數(shù)據(jù)庫元素,此元素可提供對表的記錄、查詢的結果或保存的 Recordset 的訪問。 |
Requery | 通過重新執(zhí)行對象所基于的查詢來更新 Recordset 對象中的數(shù)據(jù)。 |
Resync | 從原始數(shù)據(jù)庫刷新當前 Recordset 中的數(shù)據(jù)。 |
Save | 把 Recordset 對象保存到 file 或 Stream 對象中。 |
Seek | 搜索 Recordset 的索引以快速定位與指定的值相匹配的行,并使其成為當前行。 |
Supports | 返回一個布爾值,此值可定義 Recordset 對象是否支持特定類型的功能。 |
Update | 保存所有對 Recordset 對象中的一條單一記錄所做的更改。 |
UpdateBatch | 把所有 Recordset 中的更改存入數(shù)據(jù)庫。請在批更新模式中使用。 |
注意: 你不能使用 VBScript 或者 JScript 處理(只允許 Visual Basic, Visual C++, 和 Visual J++ 語言處理事件).
事件 | 描述 |
---|---|
EndOfRecordset | 當試圖移動到超過 Recordset 結尾的行時被觸發(fā)。 |
FetchComplete | 當異步操作中的所有記錄均被讀取后被觸發(fā)。 |
FetchProgress | 在異步操作期間被定期地觸發(fā),報告已讀取多少記錄。 |
FieldChangeComplete | Field 對象的值更改被觸發(fā)。 |
MoveComplete | Recordset 中的當前位置更改后被觸發(fā)。 |
RecordChangeComplete | 一條記錄更改之后被觸發(fā)。 |
RecordsetChangeComplete | 在 Recordset 更改之后被觸發(fā)。 |
WillChangeField | 在 Field 對象的值更改之前被觸發(fā) |
WillChangeRecord | 在一條記錄更改之前被觸發(fā)。 |
WillChangeRecordset | 在 Recordset 更改之前被觸發(fā)。 |
WillMove | 在 Recordset 中的當前位置更改之前被觸發(fā)。 |
集合 | 描述 |
---|---|
Fields | 指示在此 Recordset 對象中 Field 對象的數(shù)目。 |
Properties | 包含所有 Recordset 對象中的 Property 對象。 |
屬性 | 描述 |
---|---|
Count | 返回 fields 集合中項目的數(shù)目。以 0 起始。 例子: countfields = rs.Fields.Count |
Item(named_item/number) | 返回 fields 集合中的某個指定的項目。 例子: itemfields = rs.Fields.Item(1) 或者 itemfields = rs.Fields.Item("Name") |
屬性 | 描述 |
---|---|
Count | 返回 properties 集合中項目的數(shù)目。以 0 起始。 例子: countprop = rs.Properties.Count |
Item(named_item/number) | 返回 properties 集合中某個指定的項目。 例子: itemprop = rs.Properties.Item(1) 或者 itemprop = rs.Properties.Item("Name") |
以上就是與 ADO Recordset 對象相關的內(nèi)容介紹了,在接下來的一個小節(jié)中,我們將講解 ADO Stream 對象!
更多建議: