NULL 値を使用する
NULL 値は、値がない、または値が欠落していることを意味します。 NULL 値を許可する列では、その列に値を指定せずに行を挿入することもできます。 NULL 値を許可しない列は、その列に値のない行を受け入れません。つまり、行を挿入または更新するときに、その列には値が必要です。
各テーブル列は、NULL 列または NOT NULL 列のいずれかであり、この状態はテーブルの作成時にテーブル定義によって指定されます。次の例を見てください:
入力:
create table orders ( order_num int NOT NULL AUTO_INCREMENT, order_date datetime NOT NULL, cust_id int NOT NULL, PRIMARY KEY (order_num) )ENGINE = InnoDB;
分析: このステートメントは、この本で使用される注文テーブルを作成します。 order には、注文番号、注文日、顧客 ID の 3 つの列が含まれています。 3 つの列はすべて必須であるため、各列定義にはキーワード NOT NULL が含まれています。これにより、値のない列が挿入されなくなります。値のない列を挿入しようとすると、エラーが返され、挿入は失敗します。
次の例では、NULL 列と NOT NULL 列が混在するテーブルを作成します。
入力:
create table vendors ( vend_id int NOT NULL AUTO_INCREMENT, vend_name char(50) NOT NULL, vend_address char(50) NULL, vend_city char(50) NULL, vend_state char(5) NULL, vend_zip char(10) NULL, vend_country char(50) NULL, PRIMARY KEY (vend_id ) )ENGINE = InnoDB;
分析: このステートメントは、本書で使用されるベンダー テーブルを作成します。サプライヤー ID 列とサプライヤー名列は必須であるため、NOT NULL として指定します。残りの 5 つの列はすべて NULL 値を許可するため、NOT NULL は指定されません。 NULL がデフォルト設定です。NOT NULL が指定されていない場合は、NULL が指定されたものとみなされます。
mysql null と empty の違い
NULL について NULL 値と空の文字列を混同しないでください。 NULL 値は値ではなく、空の文字列ではありません。これは、'' (間に文字を含まない 2 つの一重引用符) を指定した場合、NOT NULL 列で許可されます。空の文字列は有効な値であり、無値ではありません。 NULL 値は、空の文字列の代わりにキーワード NULL を使用して指定されます。
以上がmysqlデータテーブルのNULL値の詳しい説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。