鍍金池/ 問答/數(shù)據(jù)庫/ 數(shù)據(jù)庫數(shù)據(jù)寫入與非數(shù)據(jù)庫操作,是否需要用事務(wù)來控制,或者其它更好的辦法

數(shù)據(jù)庫數(shù)據(jù)寫入與非數(shù)據(jù)庫操作,是否需要用事務(wù)來控制,或者其它更好的辦法

具體場景:需要往數(shù)據(jù)庫寫入一條數(shù)據(jù),同時也上傳一張圖片。圖片名是寫入數(shù)據(jù)的ID,如果圖片上傳失敗,這條數(shù)據(jù)也不要寫入。

解決辦法:1,圖片如果上傳失敗,就刪除這條數(shù)據(jù)(如果刪除失敗,怎么辦?我是在try{}catch{}的catch代碼里寫的)
2,使用數(shù)據(jù)庫事務(wù)處理,catch到錯誤,直接回滾

我覺得第二種更保險一點,不知道各位大神一般怎么處理這種問題?

回答
編輯回答
下墜

如果你司所有業(yè)務(wù)都是用存儲過程的話當然是保持一致

但是講道理如果其他的都是用代碼碼出來的話還是可以按照正常的代碼來處理

2017年2月11日 11:19