ThinkPHP3.1.2中DbOracle.class.php不能实现事务处理的解决方法
2013-06-26 10:52
621 查看
使用事务的语句通常是这样:
M()->startTrans();
提交语句是:
M()->commit();
那为什么Oracle驱动不支持事务呢, 这其实是驱动的作者开了一个小"玩笑", 因为他把这两句本不该出现的语句给写上了,
$this->mode = OCI_COMMIT_ON_SUCCESS;
// 意思就是更改Oracle提交模式为执行成功即提交, 那就难怪了, 事务肯定不能成功撒!!
所以把这句注释掉就可以了!! ( query 方法和 execute 方法都要修改! )
M()->startTrans();
提交语句是:
M()->commit();
那为什么Oracle驱动不支持事务呢, 这其实是驱动的作者开了一个小"玩笑", 因为他把这两句本不该出现的语句给写上了,
$this->mode = OCI_COMMIT_ON_SUCCESS;
// 意思就是更改Oracle提交模式为执行成功即提交, 那就难怪了, 事务肯定不能成功撒!!
所以把这句注释掉就可以了!! ( query 方法和 execute 方法都要修改! )
相关文章推荐
- ThinkPHP3.1.2的DbOracle.class.php不能实现分页的解决方法
- 【C#】对异步请求处理程序IHttpAsyncHandler的理解和分享一个易用性封装 【手记】走近科学之为什么明明实现了IEnumerable<T>的类型却不能调用LINQ扩展方法 【手记】手机网页弹出层后屏蔽底层的滑动响应 【手记】ASP.NET提示“未能创建类型”处理 【Web】一个非常简单的移动web消息框 【手记】解决EXCEL跑SQL遇“查询无法运行或数据库表无法打开...”
- PHP+Mysql基于事务处理实现转账功能的方法
- Oracle的OracleDBConsole 不能启动的又一解决新方法
- Windows不能在本地计算机启动OracleDBConsoleorcl.错误代码2的解决方法
- php5.2 Json不能正确处理中文、GB编码的解决方法
- PHP+MySQL高并发加锁事务处理问题解决方法
- php实现基于pdo的事务处理方法示例
- 对于php实现soap代理的一个常见问题:Class 'SoapClient' not found in PHP的处理方法
- PHP+Mysql基于事务处理实现转账功能的方法
- Oracledbconsole服务不能启动的解决方法
- PHP+Mysql基于事务处理实现转账功能的方法
- ORACLE EXP不能导出空表的原因分析及解决方法
- 关于Oracle10g二进制参数文件损坏不能启动Oracle实例的解决方法
- oracle 11g不能导出空表的多种解决方法
- thinkphp TAG_NESTED_LEVEL配置无效 volist嵌套不能超过三层解决方法
- Oracle 9i从9.2.0.1.0升级到9.2.0.7.0之后不能exp与imp的解决方法
- Apache与PHP的结合、使主机访问linux80端口的方法、如果PHP不能解析,用下面的方法解决
- oracle 11g不能导出空表的解决方法(转)