天天看點

阿裡為什麼規定在更新或者删除表之前要進行select操作

阿裡的SQL規範中有一條

資料訂正時,删除和修改記錄時,要先 select,避免出現誤删除,确認無誤才能執 行更新語句。

這個主要目的是:防止在更新是出現沒有加where條件就直接送出的情況發生。

當時的阿裡巴巴資料庫可以直接用bash進行背景的增删操作,各種監管和記錄檔機制都不是很完善。新入職的程式員在使用存儲過程進行update極度重要的表的時候,沒有加where條件就直接潇灑了敲了一下Enter鍵。還好當時他沒有跑路,而是用顫抖的手給DBA打了電話,還好oracle在沒有儲存前復原是有效果的,沒有造成太大的後果。