我有一个进程创建两个数据库表条目,并向 authorize.net api 发送两个请求。
现在,如果程序在过程中的任何时候出于任何原因出错,我想“回滚”。在我们的系统中创建的任何条目都应该被删除,并且应该通知用户出现了错误,并且应该提供重试的选项。
简化版的流程如下所示:
创建帐户条目 -> 创建用户条目 -> 向 Authorize.net 发送一次性付款请求 -> 从 Authorize.net 保存一次性付款请求的结果 -> 向 Authorize.net 发送定期付款请求 ->保存来自 Authorize.net 的定期付款请求的结果
处理这种情况的最佳方法是什么?
最佳答案
您只需要使用 InnoDB表,然后您可以使用 standard transaction processing statements . (即:您将使用 begin
,尝试执行必要的处理,然后相应地发出 commit
或 rollback
。)
关于php - 以编程方式处理 'transaction',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4617715/