各位好,最近在開發 Web Application 的時,遇到一些問題,想請教要怎麼做會
比較好。就是我的 Database 中的某些 column 會存放字串,字串內容的變化是
固定的。
舉例來說,我有一個 table 用來記錄每天的課表,像這樣:
科目 星期
[ 數學, 星期一 ]
[ 國語, 星期二 ]
[...]
[...]
[ 電腦, 星期四 ]
我想問的是,星期一 到 星期天 這七個字串,應該要怎麼存?
我目前能想出這些方法:
方法一:
直接存原始字串 (就像上面的例子一樣)
方法二:
再開一個 table 預先存放這七個字串,要取用時就用 id 來 join 兩個 table
舉例如下:
科目 星期_id id 星期
[ 數學, 1 ] [ 1, 星期一 ]
[ 國語, 2 ] [ 2, 星期二 ]
[...] [ 3. 星期三 ]
[...] [ ..以此類推.. ]
[ 電腦, 4 ]
方法三:
不存在 database 中,直接以常數或 enum 的形式放在程式碼裡
舉例如下:(以 pseudocode 表示)
const MONDAY = '1'
const TUESDAY = '2'
這時候存資料時直接拿這個常數來用,像這樣:
save(數學, MONDAY) // [ 數學, 1 ]
(其實這裡也衍生出一個問題,到底是要存放原始文字還是存代號,等到取出來再轉換)
以上就是我的問題,如果有不清楚或覺得怪怪的地方,我再試著說更清楚,謝謝