postgresql與oracle關於事務定義的描述

panpong發表於2017-02-06

pgoracle關於事務定義的描述

pg事務定義:

PostgreSQL裡, 一個事務是透過把SQL命令用BEGINCOMMIT命令包圍實現的。 因此我們的銀行事務實際上看起來像下面這樣:

BEGIN;

UPDATE accounts SET balance = balance - 100.00

    WHERE name = 'Alice';

-- 等等

COMMIT;

 

PostgreSQL實際上把每個SQL語句當做在一個事務中執行來看待。 如果你沒有發出BEGIN命令, 那麼每個獨立的語句都被一個隱含的BEGIN(如果成功的話)COMMIT包圍。 一組包圍在BEGINCOMMIT之間的語句 有時候被稱做事務塊。

 

Oracle事務定義:

oracle的事務是以session開始登入後的第一條dml語句開始的,然後以ddldropcreatealterrename等),tclrollbackcommitdclgrantrevoke)結束。

當然你也可以手動設定事務屬性,如只讀事務或者順序事務:

set transaction read only

set transaction isolation level SERIALIZABLE

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16976507/viewspace-2133138/,如需轉載,請註明出處,否則將追究法律責任。

相關文章