oracle事务控制

oracle中事务从上一个commit或rollback开始;

但是MySQL中事务的开始必须要有START TRANSACTION;这才标志着一个事物的开始,否则使用rollback是无法回滚数据的。

oci_execute 加上OCI_DEFAULT常量后才能回滚到第一个加了此常量的oci_execute, 原因是不加这个常量的时会自动执行并提交事务, 事务一旦被提交就无法回滚到此处.

$parse = oci_parse($connect, $sql);

$res = oci_execute($parse, OCI_DEFAULT); 

if($res){

oci_commit($connect);   

}else{

oci_rollback($connect);

}

你可能感兴趣的:(oracle)