このコマンドで作成されたテーブルの場合:
CREATE TABLE people (
age INT NOT NULL,
name CHAR(20) NOT NULL
);
アイテムを複数回挿入できます。
特に、同じ値を繰り返す列を作成できます。
UNIQUE
を使用して、列に一意の値のみを強制することができます キーの制約:
CREATE TABLE people (
age INT NOT NULL,
name CHAR(20) NOT NULL UNIQUE
);
ここで、「Flavio」を2回追加しようとすると、次のようになります。
INSERT INTO people VALUES (37, 'Flavio');
INSERT INTO people VALUES (20, 'Flavio');
エラーが発生します:
ERROR: duplicate key value violates unique constraint "people_name_key"
DETAIL: Key (name)=(Flavio) already exists.
主キー は別のプロパティを持つ一意のキーです。これは、テーブル内の行を識別するための主要な方法です。
CREATE TABLE people (
age INT NOT NULL,
name CHAR(20) NOT NULL PRIMARY KEY
);
たとえば、主キーはユーザーのリスト内の電子メールにすることができます。
主キーは一意のid
にすることができます 各レコードに自動的に割り当てます。
その値が何であれ、それを使用してテーブル内の行を参照できることがわかっています。