MySQLの既存の列にNOTNULL属性を設定します
NOT NULL属性を既存の列に設定するには、ALTERTABLEコマンドを使用します。まずテーブルを作成しましょう-
mysql> create table DemoTable1949 ( UserId int, UserName varchar(20) ); Query OK, 0 rows affected (0.00 sec)
これは、既存の列にNOTNULL属性を設定するためのクエリです-
mysql> alter table DemoTable1949 modify UserName varchar(20) not null; Query OK, 0 rows affected (0.00 sec) Records: 0 Duplicates: 0 Warnings: 0
表の説明を確認しましょう-
mysql> desc DemoTable1949;
これにより、次の出力が生成されます-
+----------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+-------------+------+-----+---------+-------+ | UserId | int(11) | YES | | NULL | | | UserName | varchar(20) | NO | | NULL | | +----------+-------------+------+-----+---------+-------+ 2 rows in set (0.00 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable1949 values(101,NULL); ERROR 1048 (23000): Column 'UserName' cannot be null mysql> insert into DemoTable1949 values(101,'Chris'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1949 values(102,'Bob'); Query OK, 1 row affected (0.00 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select * from DemoTable1949;
これにより、次の出力が生成されます-
+--------+----------+ | UserId | UserName | +--------+----------+ | 101 | Chris | | 102 | Bob | +--------+----------+ 2 rows in set (0.00 sec)
-
空であってはならないMySQL列に何を割り当てるのですか?
列が空であってはならない場合は、NOTNULLで定義します。まず、列の1つがNOTNULL-であるテーブルを作成しましょう。 mysql> create table DemoTable1895 ( Id int NOT NULL, FirstName varchar(20), LastName varchar(20) NOT NULL ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつか
-
MySQLのNOTNULL値に1を設定します
NOT NULLを設定するには、ISNOTNULLを使用して値を見つけます。構文は次のとおりです- select if('' is not NULL,1,0) as anyAliasName; これが実際のクエリです- mysql> select if('' is not NULL,1,0); これにより、次の出力が生成されます- +------------------------+ | if('' is not NULL,1,0) | +------------------------+ |