主键约束(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,'关羽');

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

主键约束(PRIMARY KEY, PK)相关推荐

  1. SQL约束(主键约束 primary key、外键约束 foreign key、唯一约束unique 、CHECK约束)

    注意: A.表中有数据不能创建约束 B.视图下设置后,要点击保存(只有保存后在才看的到) c   别忘了,点刷新,才会出来呀! 1.主键约束 primary key 主键是每行的唯一标识符,仅仅通过它 ...

  2. 主键约束(PRIMARY KEY) [MySQL][数据库]

    主键约束(PRIMARY KEY) 主键约束的特点: 主键约束相当于唯一性约束+ 非空约束,主键约束不允许重复,也不允许出现空值 一个表最多只能有一个主键约束,建立主键约束可以在列级别创建,也可以再表 ...

  3. MySQL主键约束-PRIMARY KEY

    文章目录 建表时设置主键约束 1.单字段主键 2.联合主键 修改表属性时添加主键约束 删除主键约束 主键即主键约束.分为单字段主键和多字段组合主键. 使用主键时,应注意:       1.每个表只能有 ...

  4. MySQL主键(PRIMARY KEY)

    "主键(PRIMARY KEY)"的完整称呼是"主键约束".MySQL 主键约束是一个列或者列的组合,其值能唯一地标识表中的每一行.这样的一列或多列称为表的主键 ...

  5. 2、MySQL主键(PRIMARY KEY)

    主键(PRIMARY KEY)的完整称呼是"主键约束",是 MySQL 中使用最为频繁的约束.一般情况下,为了便于 DBMS 更快的查找到表中的记录,都会在表中设置一个主键. 主键 ...

  6. Oracle数据库-主键(primary key)、外键(foreign key)、候选键(candidate key)、超键(super key)和references总结...

    主要介绍一下个人对主键(primary key).外键(foreign key).候选键(Candidate key).超键(super key).references的总结 概念: 主键:用户选择元 ...

  7. MySQL数据库——MySQL主键(PRIMARY KEY)

    主键(PRIMARY KEY)的完整称呼是"主键约束",是 MySQL 中使用最为频繁的约束.一般情况下,为了便于 DBMS 更快的查找到表中的记录,都会在表中设置一个主键. 主键 ...

  8. 主键(primary key)的设置和添加

    主键(primary key)的设置和添加 1.先创建了表,往表里添加主键 mysql> alter table user-> add primary key(useID); 2.创建表时 ...

  9. MySQL如何添加主键(PRIMARY KEY)

    1 2 3 4 5 6 7 分步阅读 简单来说主键的作用就是确定数据的唯一性,假如我给员工的id添加了主键约束,那么这个id永远不可能重复,所以才可以确定同一个人的身份,复合主键的意思就是定义两个列来 ...

  10. mysql中的主键关键字_MySQL主键(PRIMARY KEY)

    "主键(PRIMARY KEY)"的完整称呼是"主键约束".MySQL 主键约束是一个列或者列的组合,其值能唯一地标识表中的每一行.这样的一列或多列称为表的主键 ...

最新文章

  1. tum robotics
  2. fail2ban使用教程
  3. 找到一个或多个多重定义的符号
  4. python里orient_从Python访问OrientDB
  5. OpenStack运维面试(1)
  6. 自定义jackson序列化_Jackson中的自定义反序列化程序和验证
  7. UIScollView Touch事件
  8. 关于MySQL存储过程异常处理的一点心得
  9. (转)STORM启动与部署TOPOLOGY
  10. adb命令连接模拟器,could not read ok from ADB Server
  11. 地理探测器“运行时系统找不到指定文件”报错
  12. Linux 虚拟机内挂载 iso 文件
  13. 路由器PPPoE拨号密码(ADSL密码)找出方法 ZT
  14. idea时间重置插件
  15. 大数据技术生态体系(截图)
  16. 一款完全仿照E盾的源码(服务端+代理端+客户端)
  17. ios版的chrome如何保存网页为PDF
  18. win10 企业版 2016长期服务版激活方法
  19. linux音频转换软件,音频转换软件(XRecode 3)
  20. 我是一名Linux系统运维工程师

热门文章

  1. 还在羡慕微信/微博的图片处理?-android酷炫图片处理(下)
  2. 前端酷炫效果参考_纯CSS3实现的一些酷炫效果
  3. 抖音音乐号变现能力强不强,超详细运营攻略教程丨国仁网络
  4. js:身份证号码脱敏(对中间11位号码用*号替换)
  5. Java基础(一)Java语言概述及入门
  6. QT6在线安装下载速度慢的解决办法,QT6,QT5.15.1,QT5.15.0及旧版本都支持
  7. M1W Dock 教程之开发环境配置
  8. 用 python 合并不同传感器返回的轴承信号小波变换时频图
  9. 2019年编程语言排行榜,你还在犹豫吗?
  10. 第二章 离散时间信号和系统的时域描述分析 2.2.2 线性时不变系统