(PECL ibm_db2 >= 1.0.0)
db2_autocommit — 傳回或設定資料庫連線的 AUTOCOMMIT 狀態
connection
由 db2_connect() 或 db2_pconnect() 傳回的有效資料庫連線資源變數。
value
下列其中一個常數
DB2_AUTOCOMMIT_OFF
關閉 AUTOCOMMIT。
DB2_AUTOCOMMIT_ON
開啟 AUTOCOMMIT。
當 db2_autocommit() 只收到 connection
參數時,它會以整數值傳回所請求連線的 AUTOCOMMIT 目前狀態。值 DB2_AUTOCOMMIT_OFF
表示 AUTOCOMMIT 關閉,而值 DB2_AUTOCOMMIT_ON
表示 AUTOCOMMIT 開啟。
當 db2_autocommit() 收到 connection
參數和 autocommit
參數時,它會嘗試將所請求連線的 AUTOCOMMIT 狀態設定為對應的狀態。成功時傳回 true
,失敗時傳回 false
。
範例 #1 擷取連線的 AUTOCOMMIT 值
在以下範例中,使用 db2_autocommit() 函式測試以 AUTOCOMMIT 關閉建立的連線。
<?php
$options = array('autocommit' => DB2_AUTOCOMMIT_OFF);
$conn = db2_connect($database, $user, $password, $options);
$ac = db2_autocommit($conn);
if ($ac == DB2_AUTOCOMMIT_OFF) {
print "$ac -- AUTOCOMMIT 已關閉。";
} else {
print "$ac -- AUTOCOMMIT 已開啟。";
}
?>
以上範例將輸出
0 -- AUTOCOMMIT is off.
範例 #2 設定連線的 AUTOCOMMIT 值
在以下範例中,最初以 AUTOCOMMIT 關閉建立的連線,其行為會變更為開啟 AUTOCOMMIT。
<?php
$options = array('autocommit' => DB2_AUTOCOMMIT_OFF);
$conn = db2_connect($database, $user, $password, $options);
// 開啟 AUTOCOMMIT
$rc = db2_autocommit($conn, DB2_AUTOCOMMIT_ON);
if ($rc) {
print "AUTOCOMMIT 開啟成功。\n";
}
// 檢查 AUTOCOMMIT 狀態
$ac = db2_autocommit($conn);
if ($ac == DB2_AUTOCOMMIT_OFF) {
print "$ac -- AUTOCOMMIT 已關閉。";
} else {
print "$ac -- AUTOCOMMIT 已開啟。";
}
?>
以上範例將輸出
Turning AUTOCOMMIT on succeeded. 1 -- AUTOCOMMIT is on.