How does ZendDb in ZF2 control transactions?(ZF2 中的 ZendDb 如何控制事务?)
问题描述
ZF1 Zend_Db 参考手册有一个整个部分 关于执行交易.
The ZF1 Zend_Db reference manual has an entire section on performing transactions.
ZF2 ZendDb 参考手册缺少关于交易.
如何在 ZF2 中执行事务?示例代码会有所帮助.
How do I perform transactions in ZF2? Example code would be helpful.
推荐答案
缺少的文档很奇怪.
为了找出发生了什么,我不得不深入ZendDbAdapter 的 API 文档.
To find out what happened, I had to dive into the API docs for ZendDbAdapter.
看起来beginTransaction
、rollback
和commit
都定义在ZendDbAdapterDriverConnectionInterface.这意味着它们是可在每个单独的适配器连接上调用的方法.不幸的是,连接本身被埋没了.
It looks like beginTransaction
, rollback
and commit
are defined in ZendDbAdapterDriverConnectionInterface. This means that they are methods callable on every single adapter connection. Unfortunately the connection itself is rather buried.
我不清楚——目前无法提供一个例子——是弄清楚你实际上在哪个对象上调用了这些方法.在最坏的情况下,看起来您可能想要调用 $adapter->getDriver()->getConnection()->beginTransaction()
.
What I'm not clear on -- and can't provide an example for at this time -- is figuring out which object you actually call these methods on. In the worst case, it looks like you might want to call $adapter->getDriver()->getConnection()->beginTransaction()
.
呃.
我希望有更多知识的其他人以及手边的 ZF2 副本会看到这一点并提供更好的选择.
I'm hoping someone else with more knowledge, and a copy of ZF2 handy, will see this and provide a better option.
不要忘记你可以发出 BEGIN TRANSACTION
/ROLLBACK
/COMMIT
/SET autocommit=...
自己的 SQL 语句.这可能没问题,因为它看起来不像 ZendDb 跟踪事务状态.
Don't forget that you can just issue BEGIN TRANSACTION
/ROLLBACK
/COMMIT
/SET autocommit=...
SQL statements yourself. This is probably OK, as it doesn't look like ZendDb keeps track of the transaction state.
这篇关于ZF2 中的 ZendDb 如何控制事务?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:ZF2 中的 ZendDb 如何控制事务?


基础教程推荐
- php中的PDF导出 2022-01-01
- 主题化 Drupal 7 的 Ubercart “/cart"页 2021-01-01
- PHPUnit 的 Selenium 2 文档到底在哪里? 2022-01-01
- Web 服务器如何处理请求? 2021-01-01
- 使用 scandir() 在目录中查找文件夹 (PHP) 2022-01-01
- 如何在数学上评估像“2-1"这样的字符串?产生“1"? 2022-01-01
- php中的foreach复选框POST 2021-01-01
- php 7.4 在写入变量中的 Twig 问题 2022-01-01
- 将变量从树枝传递给 js 2022-01-01
- Yii2 - 在运行时设置邮件传输参数 2022-01-01