MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQL BOOL列とBOOLEAN列のデータ型の違いは何ですか?


BOOLとBOOLEANはどちらもTINYINT(1)のように機能します。どちらもTINYINT(1)の同義語であると言えます。

ブール値

これがBOOLEANの例です。列ブール型のテーブルを作成するためのクエリ。

mysql> create table Demo
   -> (
   -> isVaidUser boolean
   -> );
Query OK, 0 rows affected (1.08 sec)

挿入コマンドを使用してテーブルにレコードを挿入するクエリは次のとおりです-

mysql> insert into Demo values(true);
Query OK, 1 row affected (0.19 sec)

mysql> insert into Demo values(0);
Query OK, 1 row affected (0.17 sec)

selectコマンドを使用して、テーブルのすべての値を表示します。クエリは次のとおりです-

mysql> select *from Demo;

出力

+------------+
| isVaidUser |
+------------+
|          1 |
|          0 |
+------------+
2 rows in set (0.00 sec)

BOOL

これがBOOLの例です。以下は、テーブルを作成するためのクエリです-

mysql> create table Demo1
   -> (
   -> isVaidUser bool
   -> );
Query OK, 0 rows affected (0.54 sec)

挿入コマンドを使用して、テーブルにレコードを挿入します。クエリは次のとおりです-

mysql> insert into Demo1 values(1);
Query OK, 1 row affected (0.14 sec)

mysql> insert into Demo1 values(false);
Query OK, 1 row affected (0.16 sec)

selectコマンドを使用して、テーブルのすべての値を表示します。クエリは次のとおりです-

mysql> select *from Demo1;

出力

+------------+
| isVaidUser |
+------------+
|          1 |
|          0 |
+------------+
2 rows in set (0.00 sec)

サンプル出力を見てください。falseは0に変換されます。つまり、BOOLとBOOLEANは暗黙的にtinyint(1)に変換されます。


  1. MySQLのTINYINT(1)とブール値の違いは何ですか?

    TINYINT(1)とブール値の間に違いはありません。キーワードBoolまたはBooleanは内部でTINYINT(1)に変換されます。または、BoolまたはBooleanはTINYINT(1)と同義であると言えます。 まずテーブルを作成しましょう- mysql> create table DemoTable (    isMarried Boolean ); Query OK, 0 rows affected (1.77 sec) 表の説明を確認しましょう- mysql> desc DemoTable; これにより、次の出力が生成されます- +-----

  2. MySQLでは、!=NULLとISNOT NULLの違いは何ですか?

    値を!=NULLと比較すると、NULLが返されます。したがって、!=NULLは無意味です。 !=NULLとISNOT NULLの違いを確認するために、最初にテーブルを作成しましょう。 まずテーブルを作成しましょう- mysql> create table DemoTable1970    (    Value int    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTa