位置: 编程技术 - 正文
推荐整理分享PHP:oci_commit()的用法_Oracle函数,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
(PHP 5, PECL OCI8 >= 1.1.0)
oci_commit — 提交未执行的事务处理
说明 bool oci_commit ( resource $connection )oci_commit() 将 Oracle 连接 connection 上正在运行的事务中所有未执行的语句提交处理。
Example #1 oci_commit() 例子
<?php//LogintoOracleserver$conn=oci_connect('scott','tiger');//ParseSQL$stmt=oci_parse($conn,"INSERTINTOemployees(name,surname)VALUES('Maxim','Maletsky')");/*ExecutestatementOCI_DEFAULTtellsoci_execute()nottocommitstatementimmediately*/oci_execute($stmt,OCI_DEFAULT);/*....Parsingandexecutingotherstatementshere.......*///Committransaction$committed=oci_commit($conn);//Testwhethercommitwassuccessful.Iferroroccurred,returnerrormessageif(!$committed){$error=oci_error($conn);echo'Commitfailed.Oraclereports:'.$error['message'];}?>成功时返回 TRUE, 或者在失败时返回 FALSE。
Note:
当关闭连接或脚本结束时(看哪个先)事务会自动回卷。需要明确地调用 oci_commit() 来提交事务,或 oci_rollback() 来中止事务。
Note:
在 PHP 5.0.0 之前的版本必须使用 ocicommit() 替代本函数。该函数名仍然可用,为向下兼容作为 oci_commit() 的别名。不过其已被废弃,不推荐使用。
参见 oci_rollback() 和 oci_execute()。
参数connection
An Oracle connection identifier, returned by oci_connect(), oci_pconnect(), or oci_new_connect().
返回值成功时返回 TRUE, 或者在失败时返回 FALSE。
范例
Example #2 oci_commit() example
<?php//Insertintoseveraltables,rollingbackthechangesifanerroroccurs$conn=oci_connect('hr','welcome','localhost/XE');$stid=oci_parse($conn,"INSERTINTOmysalary(id,name)VALUES(1,'Chris')");//TheOCI_NO_AUTO_COMMITflagtellsOraclenottocommittheINSERTimmediately//UseOCI_DEFAULTastheflagforPHP<=5.3.1.Thetwoflagsareequivalent$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,'INSERTINTOmyschedule(startday)VALUES()');$r=oci_execute($stid,OCI_NO_AUTO_COMMIT);if(!$r){$e=oci_error($stid);oci_rollback($conn);//rollbackchangestobothtablestrigger_error(htmlentities($e['message']),E_USER_ERROR);}//Committhechangestobothtables$r=oci_commit($conn);if(!r){$e=oci_error($conn);trigger_error(htmlentities($e['message']),E_USER_ERROR);}?> 注释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 ocicommit() instead. 在当前版本中,旧的函数名还可以被使用,但已经被废弃并不建议使用。
参见oci_execute() - 执行一条语句 oci_rollback() - 回滚未提交的事务
PHP:oci_get_implicit_resultset()的用法_Oracle函数 oci_get_implicit_resultset(PECLOCI8=2.0.0)oci_get_implicit_resultsetReturnsthenextchildstatementresourcefromaparentstatementresourcethathasOracleDatabasecImplicitResultSets说明resourceoci_get_impl
PHP:oci_free_statement()的用法_Oracle函数 oci_free_statement(PHP5,PECLOCI8=1.1.0)oci_free_statement释放关联于语句或游标的所有资源说明booloci_free_statement(resource$statement)oci_free_statement()释放关联于Oracle游标或
PHP:oci_free_descriptor()的用法_Oracle函数 oci_free_descriptor(PHP5,PECLOCI8=1.1.0)oci_free_descriptorFreesadescriptor说明booloci_free_descriptor(resource$descriptor)Freesadescriptorallocatedbyoci_new_descriptor().返回值成功时返回TRU
标签: PHP:oci_commit()的用法_Oracle函数
本文链接地址:https://www.jiuchutong.com/biancheng/275252.html 转载请保留说明!友情链接: 武汉网站建设