English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

SQL PRIMARY KEY キーワードの使用方法及び例

SQL キーワード参照

PRIMARY KEY

PRIMARY KEY制約は、テーブル内の各レコードを一意に識別します。

テーブルは1つの主キーしか持てませんが、それは1つまたは複数のフィールドで構成できます。

CREATE TABLE上のSQL PRIMARY KEY

"Persons"テーブルを作成する際、以下のSQLは「ID」列にPRIMARY KEYを設定します:

MySQL:

CREATE TABLE Persons
(
   ID int NOT NULL,
   LastName varchar(255) NOT NULL,
   FirstName varchar(255),
   Age int,
   PRIMARY KEY (ID)
);

SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
  ID int NOT NULL PRIMARY KEY,
  LastName varchar(255) NOT NULL,
  FirstName varchar(255),
  Age int
);

PRIMARY KEY制約を名前付けるため、複数の列にPRIMARY KEY制約を定義する場合、以下のSQL文法を使用してください:

MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
  ID int NOT NULL,
  LastName varchar(255) NOT NULL,
  FirstName varchar(255),
  Age int,
  CONSTRAINT PK_Person PRIMARY KEY (ID,LastName)
);

注意:上記の例では、主キー(PK_Person)が1つしかありませんが、主キーの値は2つの列(ID+LastName)で構成されています。

SQL ALTER TABLE上のPRIMARY KEY

既に作成されたテーブルの「ID」列にPRIMARY KEY制約を後で追加する場合、以下のSQLを使用してください:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD PRIMARY KEY (ID);

PRIMARY KEY制約を名前付けるため、複数の列にPRIMARY KEY制約を定義する場合、以下のSQL文法を使用してください:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT PK_Person PRIMARY KEY (ID,LastName);

注意:ALTER TABLE 文で主キーを追加する場合、既に主キー列が NULL 値を含まないことを宣言していない場合(テーブルが初めて作成された場合)が必要です。

PRIMARY KEY 约束の削除

PRIMARY KEY 约束を削除するには、以下のSQLを使用してください:

MySQL:

ALTER TABLE Persons
DROP PRIMARY KEY;

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT PK_Person;

SQL キーワード参照