SQL PRIMARY KEY 约束

来源:互联网 发布:vb算法大全 编辑:程序博客网 时间:2024/06/05 06:16

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

    主键必须包含唯一的值。

    主键列不能包含NULL值。

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


CREATE TABLE 时的 SQL PRIMARY KEY 约束

下面的SQL在"Persions"表创建时在"P_ld"列上创建PRIMARY KEY 约束:

MySQL:

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))

SQL Server / Oracle / MS Access:

CREATE TABLE Persons(P_Id int NOT NULL PRIMARY KEY,LastName varchar(255) NOT NULL,FirstName varchar(255),Address varchar(255),City varchar(255))
如需命名PRIMARY KEY 约束,并定义多个列的PRIMARY KEY 约束, 请使用下面的SQL语法:

MySQL / SQL Server/ Oracle/ MS Access

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))
注释:在上面的例子中,只有一个主键PRIMARY KEY(pk_PersonID)。然而,pk_PersonID的值是由两个列(P_Id和LastName)组成的。


ALTER TABLE 时的 SQL PRIMARY KEY 约束

当表已被创建时,如需在"P_Id"列创建PRIMARY KEY 约束,请使用下面的SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons ADD PRIMARY KEY (P_Id)
如需命名PRIMARY KEY约束,并定义多个列的PRIMARY KEY 约束,请使用下面的SQL语法:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)
注释:如果您使用 ALTER TABLE 语句添加主键,必须把主键列声明为不包含 NULL 值(在表首次创建时)。


撤销PRIMARY KEY 约束

如需撤销PRIMARY KEY 约束,请使用下面的SQL:

MySQL:

ALTER TABLE Persons DROP PRIMARY KEY
SQL Server / Oracle / MS Access:

ALTER TABLE Persons DROP CONSTRAINT pk_PersonID

笔记列表

撤销PRIMARY KEY约束时,不论约束条件为一列还是多列,对于MySQL,撤销都是

ALTER TABLE Persons DROP PRIMARY KEY

由于PRIMARY KEY唯一性,MYSQL处理办法简单。

但对于 SQL Server / Oracle / MS Access, 一个列

ALTER TABLE Persons DROP CONSTRAINT P_Id
若起约束名,也可如下多个列

ALTER TABLE Persons DROP CONSTRAINT pk_PersonID


阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 开局队友摆烂,反手排到对面爆杀 重生七九从种田开始 战锤精灵的奇妙冒险 诸天从诛仙开始战斗掉落 大乾观星者 我编造了全球修仙时代 这个末世游戏太硬核了 韩综从签到开始 我只想安静的做个昏君 从海贼开始做魔法师 我的航海游戏大有问题 我真没想在过去的年代当学霸 美食从绿皮火车厨神开始 重生华娱从毕业开始 重生,我真在努力拒绝了 我进化出虫族文明 我在游戏异界肝属性 绝世唐门之百变为王 四合院:人生新征途 华娱从艺校开始 网王:天舞宝轮 九叔:尸甲天下 从木叶开始的制卡之路 相公,陛下又请辞啦 从高达seed的反派开始不朽 龙族:海洋与水之王扶苏 我的机战模拟器成真了 天使降临漫威 我能升级自己的身体 龙族:从原神归来的路明非 宠魅之万兽之主 这个影帝叫崇祯 我在诡异世界化金乌 全民制作人:游戏大师横空出世 全职高手之开局龙抬头! 影帝:开局演义父 火影:写轮眼之刃 汉末波涛 我用副职加天赋 四合院:飞扬人生 圣墟之无敌天下