Provided by: manpages-zh_1.5-1_all bug

NAME

       BEGIN - 開始一茖

SYNOPSIS

       BEGIN [ WORK | TRANSACTION ]

DESCRIPTIONyz
       BEGIN 初始化一茖禲A 也就是說所有 BEGIN  命令後的使用者語句都將在一-
       茖堭執行直到給出一茤確的   COMMIT   [commit(7)]   或者    ROLLBACK
       [rollback(l)]  。  預設時,(沒有  BEGIN),PostgreSQL  以 "autocommit"
       模式執行事務,也就是說,每蚖y句在其自赤漕什鶡獢A
       並且在語句結束的時埡籈t地執行一荋ㄔ獢]如果執行成功,否則執行回滾)。

        在事務塊裏執行的語句很明顯地快得多,
       因為事務開始/提交(start/commit)需n大量的CPU和磁碟活動。         在一
       事務內部執行多條語句對於蚹駺幹茯袺鰝漯磲漁尕也是很有用的:
       在所有相關的更新完成之前,其它會話看不到中間的狀態。

PARAMETERS數
       WORK

       TRANSACTION
               可選關鍵字。沒什麼作用。

NOTES`N
       START TRANSACTION [start_transaction(7)] 有著和 BEGIN 一樣的功能。

        使用 COMMIT [commit(7)] 或 ROLLBACK [rollback(7)] 結束一茖C

        在一茞{有事務塊內部發出一          BEGIN          將產生一蚅筆i訊息。
       事務的狀態將不會被影響。

EXAMPLESl
        開始一茖洏峈怢G

       BEGIN;

COMPATIBILITYe性
       BEGIN   是  PostgreSQL  語言的擴展。  在  SQL   標準中沒有明確的  BEGIN
       的定義;事務初始化總是隱含的而且使用一 COMMIT 或者 ROLLBACK 語句終止。

        許多關系型數據庫為了方便提供一茼菾妠ㄔ獢]autocommit)特性。

        順便說一句,BEGIN     關鍵字在嵌入    SQL    裏用於不同的目的。    我-
       怮媊釦A在移植數據庫應用時仔細檢查事務的語義。

SEE ALSO見
       COMMIT [commit(7)], ROLLBACK [rollback(l)]

者
       Postgresql  <laser@pgsqldb.org>