gpt4 book ai didi

php - 在 OOP 应用程序中处理嵌套事务

转载 作者:行者123 更新时间:2023-11-30 23:10:14 32 4
gpt4 key购买 nike

我在考虑设计一个新的应用程序时偶然发现了一个关于嵌套事务的一般性问题。我有一些需要重用的对象。假设这个对象之一是

class A {
public method(){
$db->startTransaction(); // shared $db object
// .... do a lot of SQL work
$db->commitTransaction();
}
}

假设现在有第二个对象 B 需要调用 A-> 方法,如果发生错误则回滚所有,如下所示:

class B {
public anotherMethod(){
$db->startTransaction();
$a = new A();
$a->method();
// code that throws an error
$db->rollbackTransaction();
}
}

处理这种情况的正确方法是什么?是否有您遵循的最佳实践?

最佳答案

Mysql不支持嵌套事务,但是你仍然可以使用保存点

关于php - 在 OOP 应用程序中处理嵌套事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20101113/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com