PHP在业务批量操作时如何保证原子性

用什么方法可以在业务批量操作时保证原子性呢?
例如:删除多条文章,但在中间有一条已经被删除了,假设这里会出现错误,那如何让整个操作回滚,并定位错误信息呢。
数据库的事务保证原子性但不能定位错误信息,但遇到无法使用事务的场景,应该怎么做呢。
海绵宝宝撒
浏览 287回答 2
2回答

慕尼黑的夜晚无繁华

利用数据库的事务来做是最合理的,错误信息可以记录啊,有操作失败抛出错误。应用逻辑来保证,就是每操作一次做下记录,成功失败都做下记录。中间出错,可以把成功的回滚。一般我们删除是假删除,所以很容易。如果真删除,记录时要记录完整信息。很好问题,期待高手来回答。

RISEBY

确实是很好的问题我能想到的办法也和@star001007一样;1、建一个支持事务类型的db2、删除时并非真正意义上的物理删除,只是设置一个标志位,比如status=1表示删除了,0表示正常。3、记录删除日志,这些冗余信息有助于恢复记录。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript