SQL - Primary Key(主键)

  • 简述

    主键是表中的一个字段,它唯一地标识数据库表中的每一行/记录。主键必须包含唯一值。主键列不能有 NULL 值。
    一张表只能有一个主键,主键可能由单个或多个字段组成。当多个字段用作主键时,它们称为复合键。
    如果表在任何字段上定义了主键,则不能有两条记录具有该字段的相同值。
    Note− 您将在创建数据库表时使用这些概念。
  • 创建主键

    以下是将 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 ;