SQL制約についての基本ガイド


  1. NOT NULL制約: NOT NULL制約は、特定の列にNULL値が許容されないことを示します。例えば、以下のようなテーブルを考えてみましょう。

    CREATE TABLE users ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, email VARCHAR(100) NOT NULL );

    上記の例では、name列とemail列にはNULL値が入力されることは許されません。

  2. UNIQUE制約: UNIQUE制約は、特定の列に一意の値が必要であることを示します。つまり、その列に重複する値を挿入することはできません。以下は例です。

    CREATE TABLE products ( id INT PRIMARY KEY, name VARCHAR(50) UNIQUE, price DECIMAL(10,2) );

    上記の例では、name列には重複する値を挿入することはできません。

  3. PRIMARY KEY制約: PRIMARY KEY制約は、テーブル内の特定の列を一意の識別子として指定します。主キーは、テーブル内の各行を一意に識別するために使用されます。

    CREATE TABLE orders ( id INT PRIMARY KEY, product_id INT, quantity INT );

    上記の例では、id列が主キーとして指定されています。

  4. FOREIGN KEY制約: FOREIGN KEY制約は、テーブル間の関連性を定義するために使用されます。外部キーとしても知られるこの制約により、関連するテーブルのデータ整合性を保つことができます。以下は例です。

    CREATE TABLE orders ( id INT PRIMARY KEY, product_id INT, quantity INT, FOREIGN KEY (product_id) REFERENCES products(id) );

    上記の例では、ordersテーブルのproduct_id列がproductsテーブルのid列を参照しています。

これらの制約はSQLデータベースにおけるデータ整合性を確保するための重要なツールです。データベース設計やデータの整合性を維持するために、これらの制約を適切に活用することが重要です。