[心得]資料庫規劃-失敗的經驗

摘要:[心得]資料庫規劃

這篇文章可能比較會讓人看不懂...但寫一寫就當成給未來的自己看,不要再犯同樣的錯。

網頁的開發,各人比較偏向寫管理系統,因為需要很清楚明白的知道一間公司的管理流程,這是一件讓人很歡愉的事情(起碼對我來說)。

最近,一套系統接近尾聲,這個時候偏偏出了問題....

在六月初,開始著手成績統計的開發時,我陷入一個困境:我要怎麼表達資料庫?

在我潛薄的經驗裡,我當下立刻想到兩個做法:

1. 將每位學員的每次考試成績當成一列資料庫記錄。

2. 將每次考試的成績做統整記錄。

差異在哪?差在第一個選項會以很誇張的速度綜向發展,第二個則是每次要讀資料都要做一堆字串切割。

我...選擇了後者,也就是犧牲使用者的電腦做字串切割、陣列儲存。

但當我設計到後面時,我發現我錯了...而且錯的很嚴重。因為所有的資料都要切割,這對設計師來講可能不成問題(因為寫到後面都是複製貼上),但是在執行效率上會有大大的問題。

問題還不只這裡...還包括了資料庫結構,因為資料表包括學員資料,為避免同名同姓,我在設定成績記錄時做了ID存入,確實,我達到了唯一性;但是每當我要執行程式時,為了能將資料包含學生姓名完整的匯出,我只能將學員資料和成績統計的資料表做了交叉掃描...這真的是該死的做法...

太蠢太沒經驗...才會造成這樣的問題存在.