MySQLで非NULL制約を追加する方法

MySQLでは、ALTER TABLEを使用してNOT NULL制約を追加できます。

具体的な文法は次のとおりです。

ALTER TABLE table_name
MODIFY column_name datatype NOT NULL;

このうち、table_nameは変更するテーブル名、column_nameはNULL値を許さない制約を追加する列名、datatypeは列のデータタイプです。

例えば、employeesという表のnameカラムにNOT NULL制約を追加する場合は、次の文を使用できます。

ALTER TABLE employees
MODIFY name VARCHAR(100) NOT NULL;

注意、NOT NULL 制約を追加すると失敗することがあります。そのカラムに空の値があれば。その場合、空の値がないことを保証するために、最初にテーブルのデータを更新してから、NOT NULL 制約を追加する必要があります。

なお、テーブルを作成時にNOT NULL制約を追加したい場合には、CREATE TABLE文で行います。

CREATE TABLE table_name (
column_name datatype NOT NULL,
...
);

例えば:

CREATE TABLE employees (
name VARCHAR(100) NOT NULL,
...
);
bannerAds