SQL PRIMARY KEY Constraint


你可以在建立表單時宣告主鍵(primary key),也可以使用ALTER TABLE來建立或是刪除。

CREATE TABLE Persons (
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (P_Id) );

你也可以使用以下指令來建立:


CREATE TABLE Persons (
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT pk_PersonID PRIMARY KEY (P_Id) );


如果Primary key是多欄組成:

CREATE TABLE Persons (
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName) );

而使用ALTER TABLE時,也可以使用如下:

ALTER TABLE Persons
ADD PRIMARY KEY (P_Id);

或是

ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName);

刪除primary key時,使用以下指令:

ALTER TABLE Persons
DROP PRIMARY KEY;

多了CONSTRAINT而寫成
CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName) );
跟PRIMARY KEY (P_Id,LastName) ); 有何差別呢?
其實結構上沒有差異,以上面為例,只是你可以命名PK為pk_PersonID而已。

BUT為何要命名Primary key呢?

留言

這個網誌中的熱門文章

如何使用EXCEL連接MYSQL

關聯模式的五大鍵 Super key、Candidate Key、Primary Key、Alternate Key、Foreign Key

SELECT SQL語法總整理