跨许多PHP请求的MySQL事务

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了跨许多PHP请求的MySQL事务脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我想创建一个用于以类似事务的方式操作发票的界面.

数据库包含一个发票表和一个invoice_lines表,发票表中包含结算信息,invoice_lines表包含发票的行项目.该网站是一组脚本,允许添加,修改删除发票及其相应的行.

我遇到的问题是,我希望数据库的ACID属性能够反映在Web应用程序中.

>原子:当用户点击保存时,修改整个发票或根本不更改整个发票.
>一致:应用程序代码已确保一致性,不能将行添加到不存在的发票中.发票ID不能重复.
>隔离:如果用户正在对发票进行一组更改,我希望在用户单击“保存”之前隐藏其他用户的更改.
>耐用:如果网站死亡,数据应该是安全的.这已经有效了.

如果我正在编写桌面应用程序,它将始终保持与MySQL数据库的连接,允许我在编辑的开头和结尾简单地使用BEgin TRANSACTION和COMMIT.

根据我的理解,你不能在一个PHP页面上进行BACIN TRANSACTION而在另一个页面上进行COMMIT,因为页面间的连接是关闭的.

有没有办法在没有扩展的情况下实现这一目标?根据我的发现,只有SQL Relay这样做(但它是一个扩展).

不想拥有长时间运行的事务,因为这会限制并发性. http://en.wikipedia.org/wiki/Command_pattern

脚本宝典总结

以上是脚本宝典为你收集整理的跨许多PHP请求的MySQL事务全部内容,希望文章能够帮你解决跨许多PHP请求的MySQL事务所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。