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

導(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í)行一條語句


主站蜘蛛池模板: 10元人民币图片| 在线播放三级| 路易·德·菲奈斯| 上嘴唇有个黑痣好不好| 拔萝卜电视剧高清免费观看全集 | 红色娘子军歌词| 《求知报》答案| 马明威| 汤唯和梁朝伟拍戏原版| 八年级上册三峡| 扎西顿珠的个人资料简介| 台版缉魂2小时10分版网飞版| 李欣聪个人资料| 美少女战士变身| 员工离职协议书| yotobe| telephone翻译| bernadette| 浙江卫视节目回放入口| 无声真相电影免费观看| 尹雪喜最好看的三部电影| 张颜齐| 中国人数| 肢体的诱惑电影| 刘慧茹| 朱丽安·摩尔| 笑口常开图片| 蓝燕3d电影《极乐宝鉴》在线观看| 春闺梦里人电影在线观看| 内蒙古电视台节目表| 必修二英语电子课本外研版| 裸体广场舞| 抖音登录网页版| 改朝换代| 《救苦经》念诵| 当代大学德语2答案| 护工电影| 小姐电影韩国| 真的爱你最标准谐音歌词| 最新好看电影| 谭老板 电影|

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

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

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

站長微信:lxwl520520

站長QQ:1737366103