SQL 自学笔记3

主键和外键

主键

PRIMARY KEY 约束唯一标识数据库表中的每条记录。

主键必须包含唯一的值。

主键列不能包含 NULL 值。

每个表都应该有一个主键,并且每个表只能有一个主键。

创建表时添加主键

CREATE TABLE Table_Eg{

Id INT PRIMARY KEY,

Eg CHAR(20)

}

可对多列设置主键

CREATE TABLE Table_Eg{

Id INT,

Eg CHAR(20)

CONSTRAIN pk_Table_Eg (Id,Eg)

}

已创建的表添加主键

ALTER TABLE Table_Eg

ADD PRIMARY KEY(Id)

删除主键约束(P.S. 所有删除约束的方法均如此)

ALTER TABLE Table_Name

DROP CONSTRAINT Constraint_Name

对于上表而言,为

ALTER TABLE Table_Eg

DROP CONSTRAINT pk_Table_Eg

外键

一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。

FOREIGN KEY 约束用于预防破坏表之间连接的动作。

FOREIGN KEY 约束也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。

比如,我们创建一张表Table_FK,其中的Id_Eg指向Table_Eg的主键Id

CREATE TABLE Table_FK{

Id INT,

Fk CHAR(20)

Id_Eg INT FOREIGN KEY REFERENCES Table_Eg(Id),

}

若已建表Table_FK,但未建外键,可使用如下语句:

ALTER TABLE Table_FK

ADD FOREIGN KEY(Id_Eg) REFERENCES Table_Eg(Id)