delphi使用ODAC控制項事務處理(快取提交)

2022-07-24 03:36:13 字數 1582 閱讀 6655

odac中事務處理(快取提交模式)

使用cachedupdates屬性可以為資料集啟用或禁用快取更新。 將cachedupdates設定為true可將對資料集的更新儲存在客戶端的內部快取中,而不是直接寫入資料集的對應的資料庫表中。 資料處理完成後,將所有快取的更改寫入資料庫。

property cachedupdates: boolean default false;

相關函式

將資料集的暫掛快取更新寫入資料庫。

procedure restoreupdates;  //

將更新快取中的所有記錄標記為未更新狀態。

procedure commitupdates;  //

清除快取的更新緩衝區,標記為提交狀態。

procedure cancelupdates;  //

從快取中清除所有未提交(commitupdates)的快取更新,並將資料集恢復為其先前狀態。

用法

orasession.starttransaction;

try//資料處理

嘗試將oraquery1更新寫入資料庫

嘗試將oraquery2更新寫入資料庫

orasession.commit; //

成功後,提交更改

except

oraquery1.restoreupdates;

//恢復oraquery1中記錄的更新狀態

oraquery2.restoreupdates; //

恢復oraquery2中記錄的更新狀態

orasession.rollback; //

失敗後,撤消更改

//處理異常(引發異常或離開),防止繼續進行

end;

oraquery1.commitupdates;

//成功後,清除oraquery1的快取

oraquery2.commitupdates; //

成功後,清除oraquery2的快取

備註

//

設定連線

oraquery1.session :=orasession;

oraquery1.cachedupdates :=true;

oraquery2.session :=orasession;

oraquery2.cachedupdates :=true;

try//資料處理

嘗試將連線到orasession的oraquery1和oraquery2的快取更新寫入資料庫

//成功後,自動提交更改。失敗後,自動撤消更改

//commit成功後,自動清除oraquery1和oraquery2的快取

except

oraquery1.restoreupdates;

//恢復oraquery1和oraquery2中記錄的更新狀態

oraquery2.restoreupdates;

end;

delphi使用ODAC控制項常用功能

macro 巨集使用 說明odac將所有巨集名稱替換為其值,並在請求執行sql時將sql語句傳送到伺服器。使用property macros tmacros stored false function macrobyname const value string tmacro 可以使用macros ...

ODAC使用心得

對oracle資料庫進行操作時,可以選擇安裝oracle客戶端,還可以直接安裝odac外掛程式。利用odac外掛程式對oracle資料庫進行操作時的步驟為 1.首先建立會話 session 會話相當與與資料庫建立連線,通過orasession控制項,主要設定的是包括需要連線資料庫的ip 埠等引數。通...

odac元件 437使用

dephi安裝odac元件 安裝步驟 1 component install packages 2 add x odac控制項目錄 odac source delphix odac dclodac70.bpl 路徑具體看你的控制項存放位置 3 確定後安裝成功。一般在安裝完成後,每次重新開啟delph...