Unique和Composite主键之间的区别在sql server中

tay*_*hra 1 sql sql-server primary-key unique-constraint

我想知道SQL Server中唯一键和复合主键之间的区别是什么.

根据w3c学校:

UNIQUE约束唯一标识数据库表中的每条记录.

UNIQUE和PRIMARY KEY约束都为一列或一组列的唯一性提供了保证.

PRIMARY KEY约束自动在其上定义UNIQUE约束.

请注意,每个表可以有许多UNIQUE约束,但每个表只有一个PRIMARY KEY约束.

我们可以使用以下方法创建复合主键:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
UNIQUE (P_Id)
)
Run Code Online (Sandbox Code Playgroud)

对于复合主键语法:

CREATE TABLE Persons
(
P_Id int,
C_Id int,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
Primary Key (P_Id,C_Id)
);
Run Code Online (Sandbox Code Playgroud)

小智 6

UNIQUE约束唯一标识数据库表中的每条记录.这为列或列集的唯一性提供了保证.我们可以用这个来定义(指向)一行.

PRIMARY KEY默认具有UNIQUE约束.

在某些表中,不会有任何具有唯一值的列来定义行.在这种情况下,使用COMPOSITE KEY.在这种情况下,将两个或更多列组合在一起,使得该组合是唯一的.