游標(biāo)類型、鎖定類型
adOpenStatic := 3
adLockOptimistic := 3
首先定義兩個(gè)常量——adOpenStatic 和 adLockOptimistic,設(shè)置它們的值為 3。adOpenStatic 用來(lái)設(shè)置記錄集的游標(biāo)類型,目前只需要知道它決定了我們可以如何在記錄集中移動(dòng)以及記錄集是否響應(yīng)數(shù)據(jù)庫(kù)的實(shí)時(shí)更新(即假設(shè)當(dāng)您從數(shù)據(jù)庫(kù)中獲取信息時(shí)別人添加新的記錄到數(shù)據(jù)庫(kù)中,那個(gè)記錄是否動(dòng)態(tài)顯示到您的記錄集中或者需要重新查詢才能獲取更新的信息)。adOpenStatic 游標(biāo)能讓您在記錄集中前后移動(dòng),但不會(huì)自動(dòng)獲取數(shù)據(jù)庫(kù)中的更新。這樣有助于減少處理時(shí)間和緩解網(wǎng)絡(luò)通信,因?yàn)橐坏┇@取了記錄集腳本就不需要持續(xù)監(jiān)視數(shù)據(jù)庫(kù)的更新。
下表中列出了游標(biāo)類型常量、相應(yīng)的值及說(shuō)明:
僅向前游標(biāo) adOpenForwardOnly 0 僅允許在記錄集中向前移動(dòng)。無(wú)法查找個(gè)別記錄、無(wú)法返回記錄集中的記錄數(shù),且無(wú)法查看到記錄集中所有的變化。
鍵集游標(biāo) adOpenKeyset 1 允許在記錄集中前后移動(dòng)、支持使用 Find 查找記錄、可以返回記錄數(shù)。能查看到現(xiàn)有記錄的動(dòng)態(tài)變化,但無(wú)法看到新添加的記錄。
動(dòng)態(tài)游標(biāo) adOpenDynamic 2 允許在記錄集中前后移動(dòng)、支持使用 Find 查找記錄、可以返回記錄數(shù),并且能查看到記錄集中所有的變化。
靜態(tài)游標(biāo) adOpenStatic 3 允許在記錄集中前后移動(dòng)、支持使用 Find 查找記錄、可以返回記錄數(shù),但無(wú)法查看到記錄集中所有的變化。當(dāng)打開(kāi)客戶端記錄集時(shí),只允許使用這種游標(biāo)類型。
注:并非所有的提供者都支持記錄集的所有方法和屬性。對(duì)于個(gè)人文件或其他不需要關(guān)心數(shù)據(jù)更新的情況,一般使用靜態(tài)游標(biāo)。
另一個(gè)常量 adLockOptimistic 用來(lái)設(shè)置記錄的鎖定類型。鎖定類型決定了數(shù)據(jù)庫(kù)是否及如何鎖定當(dāng)前查看的記錄,以及提供修改這個(gè)記錄的獨(dú)占權(quán)利。下表中列出了鎖定類型常量、相應(yīng)的值及說(shuō)明:
Read Only adLockReadOnly 1 不鎖定記錄集來(lái)釋放系統(tǒng)資源,不過(guò)這也導(dǎo)致記錄集是只讀的。
Pessimistic adLockPessimistic 2 從開(kāi)始編輯時(shí)鎖定記錄,一直到調(diào)用 Update 方法后解鎖。
Optimistic adLockOptimistic 3 僅在調(diào)用 Update 方法時(shí)臨時(shí)鎖定記錄。
Batch adLockOptimisticBatch 4 用于批次更新。