一意性制約
表示
(一意キーから転送)
一意性制約 (いちいせいせいやく、Unique Constraint)とは、データベースにおいてデータを追加、更新する際の制約の一つで、列あるいは列のグループに含まれるデータが、テーブル内のすべての行で一意(「他に同じデータがない」の意味)であることを要求する。なお、この一意性制約にNOT NULL制約を加えたものが主キー制約であると考えることもできる。
構文
[編集]テーブル作成の際に、以下のようにSQLステートメントを記述する。
1. 列制約として定義する方法:
CREATE TABLE テーブル名 ( 列名1 列1データ型 CONSTRAINT 制約名 UNIQUE, 列名2 列2データ型 [・・・,列名n 列nデータ型] );
2. テーブル制約として定義する方法:
CREATE TABLE テーブル名 ( 列名1 列1データ型, 列名2 列2データ型, [・・・列名n 列nデータ型,] CONSTRAINT 制約名 UNIQUE (列名1) );
3. 列のグループに対して一意性制約を定義する方法:
CREATE TABLE テーブル名 ( 列名1 列1データ型, 列名2 列2データ型, [・・・列名n 列nデータ型,] CONSTRAINT 制約名 UNIQUE (列名1,列名2,・・) );
「CONSTRAINT 制約名」の指定は任意である。
ALTER TABLEステートメントを使うこともできる。