SQL主鍵
主鍵是一個在一個數據庫表中唯一標識每個行/記錄表中的一個字段。主鍵必須包含唯一值。主鍵列不能有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) );
要在“ID”列創建PRIMARY KEY約束,假設CUSTOMERS表已經存在,使用下麵的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 ;