NULL 自体が値であるため、NOT NULL 制約のある文字型列に NULL キーワードを値として挿入することができます。次の例でそれを示します。
NOT NULL 制約とともに文字型列 "Name" を含むテーブル test2 があるとします。これは、次のように DESCRIBE ステートメントから確認できます。 -
mysql> Describe test2\G *************************** 1. row *************************** Field: id Type: int(11) Null: NO Key: Default: NULL Extra: *************************** 2. row *************************** Field: NAME Type: varchar(20) Null: NO Key: Default: NULL Extra: 2 rows in set (0.03 sec)
次に、次のクエリを使用して、「Name」列の値として NULL を挿入できます。
mysql> Insert into test2 values(2, 'NULL'); Query OK, 1 row affected (0.06 sec) mysql> select * from test2; +----+--------+ | id | NAME | +----+--------+ | 1 | Gaurav | | 2 | NULL | +----+--------+ 2 rows in set (0.00 sec)
「NULL」と「値としての NULL」の違いを理解するには、次の 2 つのクエリを実行できます -
mysql> delete from test2 where name IS NULL; Query OK, 0 rows affected (0.00 sec)
上記のクエリは 0 行に影響します。つまり、NULL は存在しません。 。 SELECT クエリから、行が削除されていないことを確認できます。
mysql> select * from test2; +----+--------+ | id | NAME | +----+--------+ | 1 | Gaurav | | 2 | NULL | +----+--------+ 2 rows in set (0.00 sec) mysql> delete from test2 where name = 'NULL'; Query OK, 1 row affected (0.09 sec)
上記のクエリは 1 行に影響します。これは、値が NULL の行が存在することを意味します。 SELECTクエリから、「NAME」列にNULL値が含まれる行が削除されたことが確認できます。
えええええ以上がNOT NULL制約のあるMySQLテーブルの文字型列の値としてNULLキーワードを挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。