MySQLでの制約(constraint)の使い方は何ですか?
MySQLにおいて、制約(constraints)は表内のルールを強制するメカニズムであり、特定の条件を満たすデータの完全性と有効性を提供します。
「制約」は、テーブルを作成する際に定義することもできますし、既存のテーブルに追加、変更、削除することもできます。
一般の制約タイプには以下のようなものがあります:
- PRIMARY KEY(プライマリキー):表の各行を一意に識別するために使用されます。表には1つだけプライマリキーが存在し、値が重複することはできません。
- 外部キー:テーブルとテーブルの関係を確立するために使用されます。 外部キーは、2つのテーブルの対応する列に関連付けられ、関連するテーブル間のデータの整合性を確保します。
- ユニーク制約は、表の特定の列の値が重複しないように、唯一であることを確認します。
- NULLではない(非NULL):テーブルの特定の列の値が空でないことを保証します。
- チェック制約は、列内の値が特定の条件に従う必要があることを制限するために使用されます。条件は範囲、データ型などが該当します。
- デフォルト(デフォルト制約):特定の列にデフォルト値を設定し、データを挿入する際にその列の値が提供されない場合は、デフォルト値が使用されます。
Constraintの使用は、データの完全性と一貫性を確保し、ビジネスルールに合わないデータがテーブルに挿入されるのを防ぐことができます。