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中主键约束和唯一约束的区别_主键约束和唯一性约束的区别相关推荐

  1. mysql中怎样查看和删除唯一索引

    mysql中怎样查看和删除唯一索引. 查看唯一索引: show index from mytable;//mytable 是表名 查询结果例如以下: 查询到唯一索引后,怎样删除唯一索引呢,使用例如以下 ...

  2. mysql中组合索引创建的原则是什么意思_面试前必须要掌握的MySQL索引最左前缀匹配原则...

    在面试中,经常会遇到这种问题,如果我们设置联合索引的顺序是(a, b, c), 那么如果我们在查询时的顺序却是(a, c, b) 会走索引吗?这个问题被问到的频率之高,令人乍舌,在这篇文章中,我们就深 ...

  3. mysql聚合索引跟非聚合索引的区别_聚集索引和非聚集索引的区别有哪些

    下面说说索引使用的几个误区和问题 第一:聚集索引的约束是唯一性,是否要求字段也是唯一的呢? 分析:如果认为是的朋友,可能是受系统默认设置的影响,一般我们指定一个表的主键,如果这个表之前没有聚集索引,同 ...

  4. mysql更新后返回主键,我需要在MYSQL中更新表后返回的受影响行的主键。

    I need Primary keys of the affected rows to be returned after updating a MYSQL table using my PHP Co ...

  5. MySQL中的各种锁(行锁、间隙锁、临键锁等等LBCC)

    目录 1.快照读和锁定读 1.1 一致性读 / 快照读 1.2 锁定读 1.2.1 共享锁和独占锁 1.2.2 锁定读的语句 1.2.2.1 Lock In Share Mode 对记录加S共享锁 1 ...

  6. mysql中count()函数用法:count(1)和count(*)有什么区别?

    count(*).count(1).count(字段)都有什么区别? 在我们的日常开发中,经常会遇到计算一张表的行数的情况,通常情况下我们使用一条select count(*) from t 语句就完 ...

  7. mysql主码和外码能一样吗_主码、候选码、外部码之间的联系与区别

    展开全部 主码包含候选码和码,候选码包含码. 1.含义不同:若关系中的某一属性组的值能唯一地标识一个元e68a84e8a2ad3231313335323631343130323136353331333 ...

  8. hadoop与mysql的区别_数据库与hadoop与分布式文件系统的区别和联系

    转载一篇关系数据库与Hadoop的关系的文章 1. 用向外扩展代替向上扩展 扩展商用关系型数据库的代价是非常昂贵的.它们的设计更容易向上扩展.要运行一个更大 的数据库,就需要买一个更大的机器.事实上, ...

  9. 六、约束(主键约束、唯一约束、非空约束、检查约束、外键约束)

    ## 约束,数据类型,触发器 ## 保证数据的正确性,完整性,有效性 /*主键约束唯一约束非空约束检查约束 (mysql8才有)外键约束默认值约束 */ 1.主键约束 ## 主键约束: 唯一非空 ## ...

最新文章

  1. 双节棍「大师」鱼佬亲传武功秘籍:如何进行一场数据挖掘算法竞赛?
  2. C++实现动态顺序表
  3. 站长圈转风向标了 都玩自媒体了!
  4. w10计算机无法打印,老司机解答win10系统电脑无法打印的详细技巧
  5. 简单阻容降压电路图_升压降压芯片电路
  6. 华润燃气各大区总经理_华润燃气“十四五”战略研讨会在华润大学小径湾校区举办...
  7. jq移除一条html语句,jquery html()删除脚本标签
  8. 我的第一个项目,二维码手机排队系统
  9. java date 在mybatis_mybatis如何使用Java8的日期LocalDate和LocalDateTime详解
  10. 事件驱动和状态机模式在YARN中的使用
  11. linux内存源码分析 - 内存回收(匿名页反向映射)
  12. python语言程序设计编程题_《python语言程序设计》_第二章编程题
  13. 想让你的Mac桌面清爽整洁?试试Mac临时文件存储小助手Yoink
  14. USB协议详解第29讲(USB设备状态及数据交互条件)
  15. 心理学 | (1)焦虑症和恐惧症--一种认知的观点
  16. 深度学习实战06-循环神经网络(RNN)实现股票预测
  17. 如何从Google迁移到Amazon应用内购买
  18. ^(?:([^,]*),?){1} 的含义
  19. 数据揭示疫情期间电力需求变化,电力企业巧用人工智能应对
  20. ERP系统是一种服务器吗,erp系统可以用云服务器吗

热门文章

  1. 局部变量和静态局部变量
  2. 2022-2027年中国银饰行业发展监测及投资战略研究报告
  3. 基于CRM跟进(活动)记录中关键字识别的客户跟进加权值的成单概率算法
  4. perl过滤掉字符串结束符
  5. 推荐几个非常实用的测试工具
  6. 网络安全工程师千峰学习总结第四天
  7. 转载 达芬奇五年沉浮——嵌入式处理器架构之争决战2012
  8. 【橙子日记17】从零开始的毕业设计
  9. Bounce 动画的认识
  10. 说说Mochiweb