成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導(dǎo)航首頁 ? 技術(shù)教程 ? PHP:oci_rollback()的用法_Oracle函數(shù)
全站頭部文字 我要出現(xiàn)在這里
PHP:oci_rollback()的用法_Oracle函數(shù) 799 2023-12-12   

oci_rollback

(PHP 5, PECL OCI8 >= 1.1.0)

oci_rollback — 回滾未提交的事務(wù)

說明

bool oci_rollback ( resource $connection )

oci_rollback() 回滾 Oracle 連接 connection 上所有未提交的語句。

成功時返回 TRUE, 或者在失敗時返回 FALSE

Note:

當關(guān)閉連接或腳本結(jié)束時(看哪個先)事務(wù)會自動回卷。需要明確地調(diào)用 oci_commit() 來提交事務(wù),或 oci_rollback() 來中止事務(wù)。

Note:

在 PHP 5.0.0 之前的版本必須使用 ocirollback() 替代本函數(shù)。該函數(shù)名仍然可用,為向下兼容作為 oci_rollback() 的別名。不過其已被廢棄,不推薦使用。

參見 oci_commit()。

參數(shù)

connection

An Oracle connection identifier, returned by oci_connect(), oci_pconnect() or oci_new_connect().

返回值

成功時返回 TRUE, 或者在失敗時返回 FALSE

范例

Example #1 oci_rollback() example

<?php

// Insert into several tables, rolling back the changes if an error occurs

$conn = oci_connect('hr', 'welcome', 'localhost/XE');

$stid = oci_parse($conn, "INSERT INTO mysalary (id, name) VALUES (1, 'Chris')");

// The OCI_NO_AUTO_COMMIT flag tells Oracle not to commit the INSERT immediately
// Use OCI_DEFAULT as the flag for PHP <= 5.3.1.  The two flags are equivalent
$r = oci_execute($stid, OCI_NO_AUTO_COMMIT);
if (!$r) {    
    $e = oci_error($stid);
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

$stid = oci_parse($conn, 'INSERT INTO myschedule (startday) VALUES (12)');
$r = oci_execute($stid, OCI_NO_AUTO_COMMIT);
if (!$r) {    
    $e = oci_error($stid);
    oci_rollback($conn);  // rollback changes to both tables
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

// Commit the changes to both tables
$r = oci_commit($conn);
if (!r) {
    $e = oci_error($conn);
    trigger_error(htmlentities($e['message']), E_USER_ERROR);
}

?>

Example #2 Rolling back to a SAVEPOINT example

<?php
$stid = oci_parse($conn, 'UPDATE mytab SET id = 1111');
oci_execute($stid, OCI_NO_AUTO_COMMIT);

// Create the savepoint
$stid = oci_parse($conn, 'SAVEPOINT mysavepoint');
oci_execute($stid, OCI_NO_AUTO_COMMIT);

$stid = oci_parse($conn, 'UPDATE mytab SET id = 2222');
oci_execute($stid, OCI_NO_AUTO_COMMIT);

// Use an explicit SQL statement to rollback to the savepoint
$stid = oci_parse($conn, 'ROLLBACK TO SAVEPOINT mysavepoint');
oci_execute($stid, OCI_NO_AUTO_COMMIT);

oci_commit($conn);  // mytab now has id of 1111
?>

注釋

Note:

Transactions are automatically rolled back when you close the connection, or when the script ends, whichever is soonest. You need to explicitly call oci_commit() to commit the transaction.

Any call to oci_execute() that uses OCI_COMMIT_ON_SUCCESS mode explicitly or by default will commit any previous uncommitted transaction.

Any Oracle DDL statement such as CREATE or DROP will automatically commit any uncommitted transaction.

Note:

In PHP versions before 5.0.0 you must use ocirollback() instead. 在當前版本中,舊的函數(shù)名還可以被使用,但已經(jīng)被廢棄并不建議使用。

參見

oci_commit() - 提交未執(zhí)行的事務(wù)處理 oci_execute() - 執(zhí)行一條語句


主站蜘蛛池模板: 嗯啊不要嗯| 香港论理| 老司机你懂的视频| 学练优答案| 漂亮的女邻居5伦理| 生死搏斗| 美国伦理女兵1| 高嘉慧| 免费播放电影大全免费观看| 小池里奈| 雪天使演员表介绍| 江南好简谱| 女同性激烈床戏舌吻戏| 宝力龟龟| 繁华电视剧剧情介绍| 后悔造句二年级| 在线观看xxxx| 王宝强电影全部作品| 张振铎| 荒笛子简谱| 快播电影网怡红院| 明天属于我们双男主法剧在线观看| 陈宝莲徐锦江夜半2普通话| 我等伊人来简谱| 第一次美国电影| jenna haze| 风间电影正版免费观看| 洞房视频| 许忠| 电影《德拉夫人》在线观看 | 《棋魂》电视剧| 周记作文| 为奴12年| 野蛮人电影| 皮皮虾影视| 东方卫视节目表| 自拍在线| 国产艳遇久久久久久久精品电影| 吻激情| 同志电影网站| 《窃她》短剧全集|

!!!站長長期在線接!!!

網(wǎng)站、小程序:定制開發(fā)/二次開發(fā)/仿制開發(fā)等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103