1

我可以/应该在单个 MySQL 事务中包含多少 PHP 代码?在单个事务中调用其他类和方法、操作或创建实例等事务的最佳实践是什么?

我在这里所说的“包含”的意思是在beginTransaction();和之间输入commit();

4

1 回答 1

1

我习惯于对一个元素及其所有依赖项使用一项事务。

例如,我有一个论坛,用户可以在其中更改他们的昵称。但他们也可以删除他们的帐户,我不想看到帖子被删除。所以我需要在每个帖子的某个地方保存我的用户名VARCHAR

如果用户更改了他的昵称,我将开始一个事务,在任何可能的地方更改他的昵称,如果没有错误,所以我提交。此时我不查看请求的数量,因为如果一个请求失败,我应该能够回滚有关此更改的所有内容。

但是如果管理员在管理面板中更改 2 个昵称并验证一次,我将打开 2 个事务(每个用户一个)以避免单个事务出现问题。

于 2012-09-10T17:33:39.620 回答