SQL PRIMARY KEY(主键) 约束

主键是表中的一个字段,它是标识数据库表中的每一行/记录的唯一标识符。主键必须包含唯一值。主键列不能有 NULL 值。

一张表只能有一个主键,主键可以由单个或多个字段组成。当多个字段用作主键时,它们被称为复合键。

如果表在任何字段上定义了主键,则该字段不能有两个相同值的记录。

注意- 在创建数据库表时使用这些概念。


创建主键

以下是将 ID 属性定义为 CUSTOMERS 表中的主键的语法。

CREATE TABLE CUSTOMERS(
   ID   INT              NOT NULL,
   NAME VARCHAR (20)     NOT NULL,
   AGE  INT              NOT NULL,
   ADDRESS  CHAR (25) ,
   SALARY   DECIMAL (18, 2),       
   PRIMARY KEY (ID)
);

要在 CUSTOMERS 表已存在时在“ID”列上创建 PRIMARY KEY 约束,请使用以下 SQL 语法

ALTER TABLE CUSTOMER ADD PRIMARY KEY (ID);

注意- 如果使用 ALTER TABLE 语句添加主键,则主键列应该已经声明为不包含 NULL 值(首次创建表时)。

要在多个列上定义 PRIMARY KEY 约束,请使用下面给出的 SQL 语法。

CREATE TABLE CUSTOMERS(
   ID   INT              NOT NULL,
   NAME VARCHAR (20)     NOT NULL,
   AGE  INT              NOT NULL,
   ADDRESS  CHAR (25) ,
   SALARY   DECIMAL (18, 2),        
   PRIMARY KEY (ID, NAME)
);

如果我们想在已经存在的 CUSTOMERS 表的“ID”和“NAMES”列上创建 PRIMARY KEY 约束,请使用以下 SQL 语法。

ALTER TABLE CUSTOMERS 
   ADD CONSTRAINT PK_CUSTID PRIMARY KEY (ID, NAME);

删除主键

可以使用下面给出的语法从表中清除主键约束。

ALTER TABLE CUSTOMERS DROP PRIMARY KEY ;

查看笔记

扫码一下
查看教程更方便