ADO之Recordset物件用法

2022-08-26 17:57:19 字數 2267 閱讀 7950

本文摘自:

在ado程式中,記錄集(recordset)物件代表乙個表的記錄集合或者是乙個sql命令或儲存過程執行結果。簡單地說:記錄集實際上快取了從資料庫獲得的記錄,應用程式可以從記錄集中獲得每條記錄的字段。

recordset物件的常用屬性和方法:

recordcount屬性:返回recordset物件中記錄的當前數目

bof,eof屬性:bof指示當前記錄位置的第一記錄的前乙個,eof指示當前記錄的最後乙個記錄的後乙個。如果開啟沒有記錄的recordset物件,則bof,eof都為true,如果開啟的記錄集中包含記錄,則bof,eof都為false

absoluteposition屬性:指定recordset物件當前記錄的序號位置

activeconnection屬性:該屬性指定recordset當前所屬的connection物件。

open方法定義:

1 hresult open (const _variant_t &source,  

2const _variant_t &activeconnection,

3enum

cursortypeenum cursortype,

4enum

locktypeenum locktype,

5long options)

source引數:為記錄源,它可以是下列內容之一:command物件變數,sql語句,儲存過程,表名或完整的路徑名。

activeconnection引數:對應於activeconnection屬性,指定在哪個連線中開啟該記錄集

cursortype引數:指定開啟recordset時使用的游標

0(adopenforwardonly): 預設,前向游標。只能在recordset的記錄中向前移動,但速度最快。

1(adopenkeyset):鍵集游標,可以在recordset中任意移動,其他使用者所做的記錄修改可見,但其他使用者新增的記錄不可見,刪除的記錄字段值不能被使用。

2(adopendynamic):動態游標,可以在recordset中任意移動,其他使用者增、刪、改的記錄都可見,但速度最慢。

3(adopenstatic):靜態游標,可以在recordset中任意移動,其他使用者增、刪、改的記錄都不可見。

locktype引數:指定開啟記錄集時應該使用的鎖定型別,它的取值為

0(adlockreadonly):recordset的記錄為唯讀

1(adlockpessimistic):只要保持recordset為開啟,別人就無法編輯該記錄集中的記錄.

2(adlockoptimistic):當update recordset中的記錄時,將記錄加鎖

3(adlockbatchoptimistic):以批模式時更新記錄時加鎖

options引數:該引數型別為長整型值,指定source傳遞命令的型別

1(adcmdtext):sql語句

2(adcmdtable):資料表的名字

4(adcmdstoredproc):儲存過程

8(adcmdunknown):未知型別

movefirst,movelast,movenext,moveprevious方法:這些方法可以對記錄集的游標進行移動操作

getcollect方法:用於取得欄位的值,引數index可以是字串表明欄位名,也可以是整型數,表示欄位的序號。

_variant_t  getcollect(const _variant_t &index);

putcolloct方法:用於向記錄欄位中寫入值,pvar引數表示要寫入的變數值

void putcollect (const _variant_t &index,const _variant_t &pvar);

addnew()方法:使用該方法建立和初始化新記錄,該方法可以使用引數,在引數中指定要新增的新紀錄,也可以不使用引數,而在後面使用putcollect方法修改新記錄,使用update函式儲存新紀錄

update()方法:該方法儲存從呼叫addnew方法以來或更改現有記錄中的任何字段值以來所做的所有更改。

使用記錄集的具體方法:

定義_recordsetptr型變數,然後通過它呼叫recordset物件的open方法,即可開啟乙個資料集,然後可以使用getcollet方法獲取記錄的字段值,使用move系列函式實現記錄集的遍歷,最後關閉記錄集。

使用集合fields獲取字段值

_variant_t var=precordset->fields->getitem(long(0))->getvalue();

Recordset物件方法詳解

recordset物件方法 open方法 recordset.open source,activeconnection,cursortype,locktype,options source recordset物件可以通過source屬性來連線command物件。source引數可以是乙個comman...

ASP中RecordSet物件經驗教訓

主題 recordset物件使用的經驗與教訓 1 recordset物件的eof屬性 例如 dim rs11,sqlcmd2 set rs11 server.createobject adodb.recordset sqlcmd2 select from picture where picid 12...

ADO中常用物件

connection物件 主要用來與資料庫建立聯機,它提供兩種常用方法 open方法,用 來建立並開啟乙個資料庫的聯機 close方法,將資料庫的聯機關閉。command物件 對資料庫執行命令操作,如進行資料的查詢 修改 新增 刪除等,實際上就是傳送sql指令,sql指令封裝在command物件中。...