另一方面,開發人員對數據庫的一知半解可能是一件比較危險的事情。我看到過很多數據庫被設計得過于死板,這些數據庫的設計者堅持把所有東西都放在查詢表中。
是的,數據庫開發者需要知道規范化的規則,但是你也需要知道什么時候要停止去用規范化,什么時候逆規范化反而可能會帶來更好的效果。
6、隱藏應用邏輯的“黑匣子”
存儲過程和觸發器是兩個非常偉大的功能。當你有多個客戶訪問一個數據庫的時候,它們可以幫助你確保對數據的一致性處理。
不過,它們也可能會變成一個隱藏應用邏輯的“黑匣子”,讓Web和瘦客戶端開發者無法查看和調試這些邏輯。在大多數情況下,數據庫代碼不能像其他應用程序代碼一樣被進行代碼測試和代碼調試。
因此,當你要將代碼放到數據庫中的時候,花點時間來問一下自己:這些代碼是否真的適合放在數據庫中?
7、備份!備份!備份!
你的數據庫需要備份嗎?當然需要!
我們為什么要把數據存在數據庫中的原因之一就是想長久地保存它們。然而,我卻經常碰到這樣的情況,有的開發人員卻因為這樣或那樣的原因——例如硬件故障、黑客或數據庫錯誤——因為沒有備份而導致珍貴的數據永遠丟失。因此在你開始開發之前,就應該制定一個數據備份計劃,包括備份的頻率、備份的類型,以及離線備份的頻率等等,而不應該在數據丟失后才想起備份的重要。
我不希望“亡羊補牢”的故事發生在各位數據庫程序員的身上。
文章來源于領測軟件測試網 http://www.kjueaiud.com/