我正在使用下面的MySQL表。我想添加一个名为'subcheck'
的字段,它将是由HTML表单输入TYPE = CHECKBOX
确定的是/否值。我应该给这个新领域什么“类型”?
提前致谢,
约翰
`submission` (
`submissionid` int(11) unsigned NOT NULL auto_increment,
`loginid` int(11) NOT NULL,
`title` varchar(1000) NOT NULL,
`slug` varchar(1000) NOT NULL,
`url` varchar(1000) NOT NULL,
`displayurl` varchar(1000) NOT NULL,
`datesubmitted` timestamp NOT NULL default CURRENT_TIMESTAMP,
PRIMARY KEY (`submissionid`)
)
答案 0 :(得分:14)
您可以使用TINYINT(1)
(BOOL / BOOLEAN只是TINYINT(1)
的{{3}}。
另一种选择是将Y/N
存储在CHAR(1)
。
我建议使用TINYINT(1)
因为它会为您提供最佳的便携性选项。
答案 1 :(得分:2)
布尔值 - 1表示是,0表示否。
(当然,复选框的值必须为1或0)。
比yes / no imo更便携。效率也很高
答案 2 :(得分:2)
我个人更喜欢MySQL中的枚举或设置数据类型。它使数据清晰易读。
答案 3 :(得分:1)
我会使用numeric(1) not null default 0
其中0
表示false
而1
表示true
。
答案 4 :(得分:0)
为此,我建议TINYINT(1)
。它存储1
或0
,表示是或否。它占用的空间非常小,并且在不同的SQL引擎中比常规的bool类型更好地支持。