mysql中主键约束和唯一约束的区别_主键约束和唯一性约束的区别
1.主键约束(PRIMARY KEY)
1) 主键用于唯一地标识表中的每一条记录,可以定义一列或多列为主键。
2) 是不可能(或很难)更新.
3) 主键列上没有任何两行具有相同值(即重复值),不允许空(NULL).
4) 主健可作外健,唯一索引不可;
2.唯一性约束(UNIQUE)
1) 唯一性约束用来限制不受主键约束的列上的数据的唯一性,用于作为访问某行的可选手段,一个表上可以放置多个唯一性约束.
2) 只要唯一就可以更新.
3) 即表中任意两行在 指定列上都不允许有相同的值,允许空(NULL).
4) 一个表上可以放置多个唯一性约束
3.唯一索引(INDEX)
创建唯一索引可以确保任何生成重复键值的尝试都会失败。
唯一性约束和主键约束的区别:
(1).唯一性约束允许在该列上存在NULL值,而主键约束的限制更为严格,不但不允许有重复,而且也不允许有空值。
(2).在创建唯一性约束和主键约束时可以创建聚集索引和非聚集索引,但在 默认情况下主键约束产生聚集索引,而唯一性约束产生非聚集索引
约束和索引, 前者是用来检查数据的正确性,后者用来实现数据查询的优化,目的不同。
唯一性约束与唯一索引有所不同:
(1).创建唯一约束会在Oracle中创建一个Constraint,同时也会创建一个该约束对应的唯一索引。
(2).创建唯一索引只会创建一个唯一索引,不会创建Constraint。
也就是说其实唯一约束是通过创建唯一索引来实现的。
在删除时这两者也有一定的区别:
删除唯一约束时可以只删除约束而不删除对应的索引,所以对应的列还是必须唯一的,
而删除了唯一索引的话就可以插入不唯一的值。
mysql中主键约束和唯一约束的区别_主键约束和唯一性约束的区别相关推荐
- mysql中怎样查看和删除唯一索引
mysql中怎样查看和删除唯一索引. 查看唯一索引: show index from mytable;//mytable 是表名 查询结果例如以下: 查询到唯一索引后,怎样删除唯一索引呢,使用例如以下 ...
- mysql中组合索引创建的原则是什么意思_面试前必须要掌握的MySQL索引最左前缀匹配原则...
在面试中,经常会遇到这种问题,如果我们设置联合索引的顺序是(a, b, c), 那么如果我们在查询时的顺序却是(a, c, b) 会走索引吗?这个问题被问到的频率之高,令人乍舌,在这篇文章中,我们就深 ...
- mysql聚合索引跟非聚合索引的区别_聚集索引和非聚集索引的区别有哪些
下面说说索引使用的几个误区和问题 第一:聚集索引的约束是唯一性,是否要求字段也是唯一的呢? 分析:如果认为是的朋友,可能是受系统默认设置的影响,一般我们指定一个表的主键,如果这个表之前没有聚集索引,同 ...
- mysql更新后返回主键,我需要在MYSQL中更新表后返回的受影响行的主键。
I need Primary keys of the affected rows to be returned after updating a MYSQL table using my PHP Co ...
- MySQL中的各种锁(行锁、间隙锁、临键锁等等LBCC)
目录 1.快照读和锁定读 1.1 一致性读 / 快照读 1.2 锁定读 1.2.1 共享锁和独占锁 1.2.2 锁定读的语句 1.2.2.1 Lock In Share Mode 对记录加S共享锁 1 ...
- mysql中count()函数用法:count(1)和count(*)有什么区别?
count(*).count(1).count(字段)都有什么区别? 在我们的日常开发中,经常会遇到计算一张表的行数的情况,通常情况下我们使用一条select count(*) from t 语句就完 ...
- mysql主码和外码能一样吗_主码、候选码、外部码之间的联系与区别
展开全部 主码包含候选码和码,候选码包含码. 1.含义不同:若关系中的某一属性组的值能唯一地标识一个元e68a84e8a2ad3231313335323631343130323136353331333 ...
- hadoop与mysql的区别_数据库与hadoop与分布式文件系统的区别和联系
转载一篇关系数据库与Hadoop的关系的文章 1. 用向外扩展代替向上扩展 扩展商用关系型数据库的代价是非常昂贵的.它们的设计更容易向上扩展.要运行一个更大 的数据库,就需要买一个更大的机器.事实上, ...
- 六、约束(主键约束、唯一约束、非空约束、检查约束、外键约束)
## 约束,数据类型,触发器 ## 保证数据的正确性,完整性,有效性 /*主键约束唯一约束非空约束检查约束 (mysql8才有)外键约束默认值约束 */ 1.主键约束 ## 主键约束: 唯一非空 ## ...
最新文章
- 双节棍「大师」鱼佬亲传武功秘籍:如何进行一场数据挖掘算法竞赛?
- C++实现动态顺序表
- 站长圈转风向标了 都玩自媒体了!
- w10计算机无法打印,老司机解答win10系统电脑无法打印的详细技巧
- 简单阻容降压电路图_升压降压芯片电路
- 华润燃气各大区总经理_华润燃气“十四五”战略研讨会在华润大学小径湾校区举办...
- jq移除一条html语句,jquery html()删除脚本标签
- 我的第一个项目,二维码手机排队系统
- java date 在mybatis_mybatis如何使用Java8的日期LocalDate和LocalDateTime详解
- 事件驱动和状态机模式在YARN中的使用
- linux内存源码分析 - 内存回收(匿名页反向映射)
- python语言程序设计编程题_《python语言程序设计》_第二章编程题
- 想让你的Mac桌面清爽整洁?试试Mac临时文件存储小助手Yoink
- USB协议详解第29讲(USB设备状态及数据交互条件)
- 心理学 | (1)焦虑症和恐惧症--一种认知的观点
- 深度学习实战06-循环神经网络(RNN)实现股票预测
- 如何从Google迁移到Amazon应用内购买
- ^(?:([^,]*),?){1} 的含义
- 数据揭示疫情期间电力需求变化,电力企业巧用人工智能应对
- ERP系统是一种服务器吗,erp系统可以用云服务器吗