阿裡的SQL規範中有一條
資料訂正時,删除和修改記錄時,要先 select,避免出現誤删除,确認無誤才能執 行更新語句。
這個主要目的是:防止在更新是出現沒有加where條件就直接送出的情況發生。
當時的阿裡巴巴資料庫可以直接用bash進行背景的增删操作,各種監管和記錄檔機制都不是很完善。新入職的程式員在使用存儲過程進行update極度重要的表的時候,沒有加where條件就直接潇灑了敲了一下Enter鍵。還好當時他沒有跑路,而是用顫抖的手給DBA打了電話,還好oracle在沒有儲存前復原是有效果的,沒有造成太大的後果。