亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PHP在業務批量操作時如何保證原子性

PHP在業務批量操作時如何保證原子性

海綿寶寶撒 2019-04-16 20:27:46
用什么方法可以在業務批量操作時保證原子性呢?例如:刪除多條文章,但在中間有一條已經被刪除了,假設這里會出現錯誤,那如何讓整個操作回滾,并定位錯誤信息呢。數據庫的事務保證原子性但不能定位錯誤信息,但遇到無法使用事務的場景,應該怎么做呢。
查看完整描述

2 回答

?
慕尼黑的夜晚無繁華

TA貢獻1864條經驗 獲得超6個贊

利用數據庫的事務來做是最合理的,錯誤信息可以記錄啊,有操作失敗拋出錯誤。
應用邏輯來保證,就是每操作一次做下記錄,成功失敗都做下記錄。中間出錯,可以把成功的回滾。一般我們刪除是假刪除,所以很容易。如果真刪除,記錄時要記錄完整信息。
很好問題,期待高手來回答。
                            
查看完整回答
反對 回復 2019-04-16
?
RISEBY

TA貢獻1856條經驗 獲得超5個贊

確實是很好的問題
我能想到的辦法也和@star001007一樣;
1、建一個支持事務類型的db
2、刪除時并非真正意義上的物理刪除,只是設置一個標志位,比如status=1表示刪除了,0表示正常。
3、記錄刪除日志,這些冗余信息有助于恢復記錄。
                            
查看完整回答
反對 回復 2019-04-16
  • 2 回答
  • 0 關注
  • 305 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號