RecordSet屬性
屬性 功能簡述
absolutepage 目前的絕對資料頁位置
absluteposition 目前的絕對資料位置
activeconnection 與command and connection物件主動連接
bof 資料區塊的開頭邊界
bookmark 提供資料指標位置的書籤功能
cachesize recordser內資料所暫存的記憶體大小
cursorlocation 控制資料指標的型態為伺服端或客戶端
cursortype 控制如何由伺服端資料庫取回資料
eof 資料區塊的結尾邊界
editmode 控制目前資料的處理狀態
filter 控制欲顯示或隱藏的資料內容
locktype 控制資料更新的模式
maxrecords 允許由伺服端取回的最大資料數目
pagecount 資料頁總數
pagesize 控制每一資料頁內的資料筆數
recordcount 由伺服端取回的資料項目總數
source 資料請求訊息
status 最近一筆資料處理後的狀態或訊息

計算頁數:pagecount = ( recordcount + pagesize - 1 ) / pagesize

CACHSIZE
資料型態:為一整數資料型態。
屬性功能:用來決定客戶端每次由資料庫伺服端取回的資料大小數。

cursorlocation
資料型態:123的整數值
屬性功能:控制伺服端資料庫回傳資料所處理的位置
1 aduseclient
下載DBSERVER回應的資料於客戶端快取做資料存取的處理。
2 aduseserver
維持DBSERVER回應的資料於伺服端做資料庫存取的處理
3 aduseclientbatch
由資料庫回應的資料可動態回傳至客戶端、切斷連線做處理、再連線做資料更新。

cursortype
資料型態:1234的整數值
屬性功能:控制資料更新後過濾下載的資料型式
1 adopenforwardonly
此項屬性為預設值,且這項設定擁有最快的回應時間;資料筆數僅可以使用MoveNext OR GetRows方法向後索取資料,而暫存在bookmark裡頭的資料無法再次被獲得。
2 adopenkeyset
除了在資料庫中加入新的資料,其他方式的存取都會呈現於各個使用者recordset物件上,意即在一客戶端上更改的資料其他使用者立即可顯現出來。這時recordset物件內資料無論是向前或向後索取均可以完全的被控制,且暫存在bookmark裡頭的資料可以再次拿出來使用。
3 adopendaynamic
所有資料庫的操作動作都會立即反應的各個客戶端使用者上。這時recordset物件內資料無論是向前或向後索取均可以完全的被控制,且暫存在bookmark裡頭的資料可以再次拿出來使用。
4 adopenstatic
由資料庫伺服器所回應的資料已經與資料庫隔絕開來,因此在資料庫上所有更新的資料均不會同時呈現於不同的使用者端上。這時recordset物件內資料無論是向前或向後索取均可以完全的被控制,但暫存在bookmark裡頭的資料可能無法再次取用。

editmode
資料型態:012的整數值
屬性功能:用來顯示資料資料的處理狀態
0 adeditnone
該資料未被處理更改過。
1 adeditinprogress
目前的資料正在被處理,有可能有些資料已經被更改過。
2 adeditadd
該資料項是使用addnew方法所宣告的新資料項,但是該資料尚未回傳至資料庫端。

locktype
資料型態:1234的整數值
屬性功能:控制對資料庫更新資料時的鎖住機制
1 adlockreadonly
recordset物件是以唯讀模式開啟,故不允許資料更新、插入或刪除的動作。
2 adlockpessimistic
資料在更新時鎖住其他所有動作,這是最安全的鎖住機制。
3 adlockoptimistic
資料在更新時並未鎖住其他使用者的動作,仍然可以做資料更新、插入或刪隱的動作。
4 adlockbatchoptimistic
資料在更新時並未鎖住其他使用者的動作,且資料處理位置必須為aduseclientbatch模式才允許做資料更新插入或刪除的動作。


status
屬性功能:表示目前資料的狀態旗標
0 adrecok
該筆資料項動作正確
1 adrecnew
該筆是新加入的資料,但仍未加入資料庫中
2 adrecmodified
該筆資料已經被修改,但還未上傳至資料庫
4 adrecdeleted
該筆資料已經被刪除了
8 adrecunmodified
該筆資料尚未被修改過
16 adrecinvalid
無法獲得資料故更新資料庫失敗
64 adrecmultiplechanges
更新資料庫失敗,因必須透過多重資料項編修
128 adrecpendingchanges
更新資料庫失敗,因該資料必須倚靠其他項待改變的資料項
256 adreccanceled
由於放棄資料庫連線或動作導致資料磁更新失敗
1024 adreccantrelease
無法獲得資料庫鎖型式導致資料庫更新失敗
2048 adrecconcurrencyviolation
由於資料庫鎖型式為adlockoptimistic,導致嘗試更新資料庫時導致未知的錯誤
4096 adrecintegrityviolation
由於該筆資料違背現行的資料庫規則或限制導致更新資料庫失敗
8192 adrecmaxchangesexceeded
由於過多筆資料要更新或加入導致資料庫更新失敗
16384 adrecobjectopen
由於其他的recordset物件導致資料更新錯誤
32768 adrecoutofmemory
由於伺服端記憶體溢導致資料庫更新錯誤
65536 adrecpermissiondenied
由於使用者權力不足導致資料庫更新失敗
131072 adrecschemaviolation
該筆資料違背資料庫結構導致更新失敗
262144 adrecdbdeleted
該筆資料已被刪除導致資料庫更新失敗


recordset方法
addnew 加入一筆新的資料項
rs.addnew
cancelbatch 取消備份上傳模式的資料更新動作
rs.cancelbatch
cancelupdate 取消資料更新的動作
rs.cancelupdate
clone 建立一個相等的recordset物件
set cloners=rs.clone
close 關閉目前的recordset物件
rs.close
delete 刪除目前位置指標的資料項
rs.delete (adaffectcurrent|adaffectgroup)
getrows 取得多筆資料項
set valuesarrey=rs.getrows (count,start,fields)
move 移動到指定的資料項指標位置
rs.move count,start
movenext 下一筆
rs.movenext
moveprevious 上一筆
rs.moveprevious
movefirst 第一筆
rs.movefirst
movelast 最後一筆
rs.movelast
nextrecordset 移動到多重資料請求時取得的另外一個recordset物件
set nextrs=rs.nextrecordset (affected)
open 執行向資料庫資料請求的動作
rs.open source,connection,cursor,lock,type
requery 重複執行資料庫請求的動作
recordset.requery
resync 與資料庫伺器進行資料同步的模式
rs.resynce (adaffectcurrent|adaffectgroup_adaffectall)
supports 允許目前recordset物件支援的功能
ifsupport=rs.supports (option)
update 更新目前的資料至資料庫伺服器
rs.update fields,values
updatebatch 在備份上傳模式下進行資料上傳更新的動作
rs.updatebatch (adaffectcurrent|adaffectgroup|adaffectall)


adaffectcurrent 只對目前指標位置
adaffectgroup 所有匹配於filter屬性的資料項
adaffectall 對所有rs省件內的資料
整理匯整:江英福


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Jiang Ying-Fu 的頭像
    Jiang Ying-Fu

    Jiang Ying-Fu的部落格

    Jiang Ying-Fu 發表在 痞客邦 留言(0) 人氣()