📜  SQL composite-key

📅  最后修改于: 2020-11-11 09:43:15             🧑  作者: Mango

SQL复合键

组合键是表中两个或更多列的组合,当组合了列时,可以用来唯一标识表中的每一行,但可以保证唯一性,但是当单独使用时,它不能保证唯一性。

有时需要多个属性来唯一标识一个实体。由多个属性组合而成的主键称为复合键。

换句话说,我们可以这样说:

复合键是一个键,它是给定表的多个字段或一列的组合。它可以是候选键或主键。

组成复合键的列可以具有不同的数据类型。

指定复合键的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:

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 Server:

让我们看一下select top语句的语法:

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