2010-07-05 46 views

回答

2

在您的情況下,enumtinyint的大小相同(即1 byte)。但是,如果數據更改,則enum選項的靈活性會降低。所以,如果你使用絕對確定你的數據定義不會改變(例如,如果你將來會添加'disabled'狀態怎麼辦?)。

如果您決定堅持使用enum,像enum('active', 'not_active')這樣的定義更實用。

0

這取決於什麼數據庫引擎選擇引擎蓋下做的。如果你永遠不會超越兩種選擇,我會推薦tinyint - 但我懷疑它有多大的不同。

0

我個人的偏好是使用TINYINT(1)

1

BOOL,BOOLEAN。這些類型是TINYINT的同義詞(1)

我覺得你應該去tinyint(1)

0

enum('active', 'inactive')將使用枚舉的優點,優於enum(0, 1)

0

ENUM是好的,如果你想擁有特定的值 - 例如:

enum('y','n') 

但如果你只需要一個簡單的布爾,使用TINYINT(1)。