2010-01-12 61 views

回答

7

是的,這將是一個適當的數據類型,因爲它強制你的域名。

但是,如果您要添加(或進行任何其他數學運算),則數字數據類型可能會更好。

+3

確實,或者如果你打算平均他們。 TINYINT可能更合適,只要確保在應用程序中限制值即可。 – 2010-01-12 14:08:12

+0

好點謝謝!舉例來說,如果我想計算產品枚舉的平均評分將是一個不錯的選擇,對吧?我只需要使用一個int並以編程方式將輸入約束在1&5> – 2010-01-12 14:09:43

+0

@Jordan之間,我的想法就是這樣。 ENUM確實閃耀,如果你有一個固定的文本列表,並沒有數字內涵 – 2010-01-12 14:09:48

9

我建議使用

TINYINT UNSIGNED NOT NULL 

,或者更好的ANSI/SQL的兼容性,使用:

SMALLINT NOT NULL 

一個整型,這是很容易做到的計算。 ENUM並不壞,但是由於它是雙字符串/ int類型(在封面之下,它是一個int,但是從外部看,它是一個字符串),所以可能會搞砸了。事實上,假設你確實需要去3星級,或者10星級左右,那麼遷移將不那麼痛苦。