PHP中的单个操作必须执行以下步骤:
整个过程需要是一个单一的交易。如果MySQL存储过程中发生任何错误,则必须回滚整个事务。 (存储过程具有查询以创建临时表,执行基于游标的扫描并执行插入。)即使在存储过程之后PDO中发生错误,也必须完全回滚事务,包括发生的任何更改。存储过程。
基于PDO的查询在很长一段时间内被编程。并根据客户的新要求重新引入存储过程。
在PHP中,事务在步骤1开始时启动。在步骤3结束时有一个提交。最后有一个catch块,导致回滚。
是否应在存储过程中启动事务?如果是这样,如何完全回滚错误?或者我们应该在存储过程中手动将auto-commit设置为false吗?或者,是否有其他方式通知MySQL此存储过程已经是事务的一部分。
如果没有,整个行动的原子性是否得到保证?
答案 0 :(得分:-1)
这是mohip引用的链接:http://dev.mysql.com/doc/refman/5.6/en/begin-end.html 事务不是自动在存储过程中运行,需要通过“START TRANSACTION”触发它,我正要问这个问题。谢谢你的报价。