1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 主键约束(PRIMARY KEY PK)

主键约束(PRIMARY KEY PK)

时间:2023-07-08 22:34:16

相关推荐

主键约束(PRIMARY KEY  PK)

主键约束(PRIMARY KEY, PK)

主键约束=非空约束+唯一约束。也就是说设置为主键列,不能够为空,不能够重复。

范例:定义主键约束

--删除数据表DROP TABLE member PURGE;--清空回收站PURGE RECYCLEBIN;--创建数据表CREATE TABLE member(mid NUMBER,name VARCHAR2(20) NOT NULL,CONSTRAINT pk_mid PRIMARY KEY (mid));--测试数据INSERT INTO member(mid,name) values (1,'韩信');INSERT INTO member(mid,name) values (2,'李白');--提交事务COMMIT;

范例:增加正确的数据

INSERT INTO member(mid,name)values (3,'鲁班');

范例:增加错误的数据------将主键内容设置为null

INSERT INTO member (mid,name) values (null,'狄仁杰');

范例:增加错误的数据------主键信息重复

INSERT INTO member (mid,name) VALUES (1,'虞姬');

通过以上信息可以确定,主键就是非空约束和主键约束的集合体。

在99%的情况下一张表中一般只定义一个主键信息,从SQL语法的角度来讲是允许定义多个主键,这样的操作称为复合主键。如果是复合主键,则表示若干个列的内容完全重复的时候才称为违反约束。

范例:复合主键

--删除数据表DROP TABLE member PURGE;--清空回收站PURGE RECYCLEBIN;--创建数据表CREATE TABLE member(mid NUMBER,name VARCHAR2(20) NOT NULL,CONSTRAINT pk_mid PRIMARY KEY (mid,name));--测试数据INSERT INTO member(mid,name) values (1,'韩信');INSERT INTO member(mid,name) values (2,'李白');--提交事务COMMIT;

此时将mid与name两个字段同时定义为主键,所以当两个字段完全重复的时候才违反约束。

范例:增加正确的数据

insert into member(mid,name) values (1,'关羽');insert into member(mid,name) values (2,'妲己');

范例:增加错误数据

insert into member (mid,name) values(1,'关羽');

数据库设计的第一原则:不要使用复合主键。即:一张表就一个主键。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。