开发者

MySQL SQL Query 0 or 1

开发者 https://www.devze.com 2023-02-10 12:13 出处:网络
I have a very simple question. I have an SQL query that looks like this: CREATE TABLE `users` ( [...] `开发者_运维百科ABC` BIT()

I have a very simple question. I have an SQL query that looks like this:

CREATE TABLE `users` (
    [...]
    `开发者_运维百科ABC` BIT()
    [...]
)

I want ABC to be either 0 or 1I am just wondering, is this the correct way to do it?


Drop the ():

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

Like most people, I usually pick TINYINT(1) over BIT, but I think this is fine.

The issue with MySQL is that it doesn't have a real Boolean data type, and neither TINYINT nor BIT can represent a column that holds exactly two non-NULL values of 0 and 1 (they have different ranges of values). The only way is to emulate it with a really small numeric column and pray nobody sneaks in non-zero-or-one values...


Bit has some oddities that go along with it in new version of MySQL. I'd suggest using a bool or tinyint(1).

0

精彩评论

暂无评论...
验证码 换一张
取 消