MySQLのtinyint(1)にtrueとfalseが入る
MySQLでテーブルを作成する際にbooleanと指定するとtinyint(1)になります。
CREATE TABLE IF NOT EXISTS テーブル名 ( カラム名 boolean NOT NULL, ~ );
MySQLのtinyint(1)という定義にすると-128から127までを入れることができます。
これは1byteだからです。
MySQLのint,bigint,decimalの使い分けについて
それとは別に、insert文だとtrue,falseを入れることができます。trueの場合1、falseの場合0となります。
CREATE TABLE IF NOT EXISTS Users ( flag tinyint(1) NOT NULL );
これで以下インサートを発行するとtrueの場合1、falseの場合0となることが確認できます。
INSERT INTO users(flag) VALUES (true); INSERT INTO users(flag) VALUES (false);
bit(1)にすると、trueなら1,falseなら0が入ります。その他の値が入る事はありません。

KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント