MySQLの既存の列にnull以外の制約を追加するにはどうすればよいですか?
MySQLの既存の列に非ヌル制約を追加するには、ALTERコマンドを使用します。これは、ユーザーがnull値を入力できないようにするための検証の一種です。
例を見てみましょう。まず、テーブルを作成します。 CREATEコマンドを使用してテーブルを作成します。
mysql> create table AddNotNUlldemo - > ( - > name varchar(100) - > ); Query OK, 0 rows affected (0.44 sec)
レコードを挿入します。
mysql> insert into AddNotNUlldemo values('John'); Query OK, 1 row affected (0.19 sec) mysql> insert into AddNotNUlldemo values('Bob'); Query OK, 1 row affected (0.19 sec)>
すべてのレコードを表示します。
mysql> select *from AddNotNUlldemo;
これが出力です。
+------+ | name | +------+ | John | | Bob | +------+ 2 rows in set (0.00 sec)
以下は、既存の列に制約を追加するための構文です。
ALTER table yourTableName modify column_name data type constraint;
次に、上記の構文を実装して、以下のクエリを実装しましょう。ここでは、「nullではない」制約を含めています。
mysql> ALTER table AddNotNUlldemo modify name varchar(100) not null; Query OK, 0 rows affected (1.14 sec) Records: 0 Duplicates: 0 Warnings: 0
上記の制約を「notnull」として設定したため、テーブル「AddNotNUlldemo」にnull値を挿入できなくなりました。 null値を追加しようとすると、エラーが発生します。以下は例です。
mysql> INSERT into AddNotNUlldemo values(null); ERROR 1048 (23000): Column 'name' cannot be null
すべてのレコードを表示します。
mysql> SELECT *from AddNotNUlldemo;
これが出力です。
+------+ | name | +------+ | John | | Bob | +------+ 2 rows in set (0.00 sec)
-
MySQLでNULLを表示するテーブル列に小計を追加するにはどうすればよいですか?
最初にテーブルを作成しましょう- mysql> create table DemoTable -> ( -> Amount int, -> SubTotal int -> ); Query OK, 0 rows affected (0.65 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します ysql> insert into DemoTable(Amount) values(50); Query OK, 1 row affected (0.17 sec) mysql> insert into DemoTable(Amou
-
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