MySQL SQL查询0或1

时间:2011-02-14 02:04:57

标签: mysql

我有一个非常简单的问题。我有一个SQL查询,如下所示:

CREATE TABLE `users` (
    [...]
    `ABC` BIT()
    [...]
)

我希望ABC成为01我只是想知道,这是正确的做法吗?

2 个答案:

答案 0 :(得分:3)

放弃()

CREATE TABLE `users` (
    [...]
    `ABC` BIT, 
    [...]
)

与大多数人一样,我通常选择TINYINT(1)而不是BIT,但我认为这很好。

MySQL的问题在于它没有真正的布尔数据类型,TINYINTBIT都不能代表一个只包含两个非NULL值的列。 01(它们具有不同的值范围)。唯一的方法是使用一个非常小的数字列模拟它,并祈祷没有人偷偷摸摸非零或一个值......

答案 1 :(得分:2)

Bit在新版本的MySQL中有一些oddities。我建议使用booltinyint(1)