資料庫設計心得體會

跟老闆做了兩個算是比較大的項目,資料庫主體都是我設計的。第一個感覺很失敗;第二個現在正在用,雖然總結了第一個的教訓,但感覺還是有些遺憾。把這過程中的一些心得記在這裡,以便日後用到時來查閱。若以後還有機會再設計資料庫——現在倒還有些期待,呵呵,再有新的體會,也全部補充到這裡。

1.儘量使用數據冗餘。

隨著磁碟容量的大幅飆升,這一點已經不會產生什麼問題。當然冗餘歸冗餘,不能把數據的關聯弄的亂七八糟的。

本科資料庫課程中學的知識直接拿來,在實際中會出大問題。滿足三級範式的資料庫結構會讓你面對大量的連表查詢,應用程式中會用到大量的資料庫訪問,既繁瑣(煩死你)又使程式運行速度減慢。

2.儘量不要使用varchar(max)類型

這一點主要是用動軟代碼生成器自動生成代碼時,如果varchar的最大長度指定為max,在自動生成代碼時,它無法生成這一最大長度,需要手動補進去。

現在感覺用個varchar(1000)就夠了。

3.使用預留欄位。

資料庫表(尤其是動態表格),在你把所有欄位都設計好了之後,再添加幾個備註欄位和預留欄位。

之前我覺得這樣做沒多大意義,因為預留欄位的列名是沒有實際意義的。這樣程式中使用的時候就會讓人費解。但現在覺得還是有必要的,很有必要的,即便在用到時需要自己十分清楚之前預留的無意義欄位現在表示什麼意義。不過我的第二個資料庫中還是沒採用,這也是遺憾之處啊。

個人感覺用note1、note2、r1(r表示reserve)、r2、r3,2個備註欄位和3個預留欄位就足夠了,再多的話就不容易記住哪個欄位具體表示什麼意義了,容易暈。類型就都用varchar(200)吧。

資料庫設計心得體會(2):

在我看來,資料庫課程設計主要的目標是利用課程中學到的資料庫知識和技術較好的開發設計出資料庫套用系統,去解決各行各業信息化處理的要求。通過這次的課程設計,可以鞏固我們對資料庫基本原理和基礎理論的理解,掌握資料庫套用系統設計開發的基本方法,進一步提高我們綜合運用所學知識的能力。

當我們這組決定做大學生就業諮詢系統時,我們並沒有著手寫程式。而是大家一起商量這個系統概述、系統目標、系統需求、業務流程分析、數據流程分析和數據詞典。當這些都準備好了之後,我們進行模組的分工。每個人都有自己的模組設計,而且寫出來的代碼要求可以實現相應模組的功能,得到理想的效果。當每個人都把自己的分工做好了,最後會由一個人把這些全部組合搭建在一起。我們使用的是html和php相互嵌套使用,當一個系統做好了之後,我會好好地把程式都看一遍,理會其中的奧秘。

我所負責的是資料庫的備份和還原還有一些界面的實現。還記得自己剛接觸html的時候,覺得很感興趣,所以有一段時間幾乎到了痴迷的程度。然而php是我剛接觸不久的一種程式語言。不過覺得它的功能真的很強大,可以開發出很多大型的系統。但是在做備份和還原的時候,要考慮的東西還是很多的。當我遇到錯誤的時候,感到很受打擊。值得欣慰的是,在同學的幫助和大量參考書的查閱下,我把自己的模組做好了。這就是我收穫最大的地方。而且,我明白了遇到困難永不放棄的重要性,我知道了團隊合作的重要性,我領悟了只有堅持不懈才會取得勝利。