logo

SQL複合キー

複合キーは、テーブル内の 2 つ以上の列の組み合わせであり、列を結合した場合には一意性が保証されますが、個別に取得した場合には一意性は保証されません。

エンティティを一意に識別するために複数の属性が必要になる場合があります。複数の属性を組み合わせて作成される主キーは、複合キーと呼ばれます。

言い換えれば、次のように言えます。

複合キーは、特定のテーブルの複数のフィールドまたは列を組み合わせたキーです。候補キーまたは主キーの場合があります。

複合キーを構成する列は、さまざまなデータ型にすることができます。

複合キーを指定する SQL 構文:

 CREATE TABLE TABLE_NAME (COLUMN_1, DATA_TYPE_1, COLUMN_2, DATA_TYPE_2, ??? PRIMARY KEY (COLUMN_1, COLUMN_2, ...)); 

いずれの場合も、作成される複合キーは COLUMN1 と COLUMN2 で構成されます。

MySQL:

 CREATE TABLE SAMPLE_TABLE (COL1 integer, COL2 varchar(30), COL3 varchar(50), PRIMARY KEY (COL1, COL2)); 

MySQL:

java system.out.println
 CREATE TABLE SAMPLE_TABLE (COL1 integer, COL2 varchar(30), COL3 varchar(50), PRIMARY KEY (COL1, COL2)); 

オラクル:

 CREATE TABLE SAMPLE_TABLE CREATE TABLE SAMPLE_TABLE (COL1 integer, COL2 varchar(30), COL3 varchar(50), PRIMARY KEY (COL1, COL2)); 

SQLサーバー:

select top ステートメントの構文を見てみましょう。

 CREATE TABLE SAMPLE_TABLE (COL1 integer, COL2 nvarchar(30), COL3 nvarchar(50), PRIMARY KEY (COL1, COL2));