当前位置: 首页 > news >正文

10,sql约束(2)

MySQL中primary key和unique的区别

在sql、oracle中的constrain有两种约束,都是对列的唯一性限制:unique与primary key,它们的区别如下:

1、unique key要求列唯一,但不包括Null字段,也就是约束的列可以为空且仅要求列中的值除Null之外不会重复即可。

2、primary key也要求列唯一,同时又限制字段的值为not Null,相当于primary key = unique+not null

3、一个表可以有多个unique,但是只能有一个primary key

详解

unique

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

UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。

PRIMARY KEY 拥有自动定义的 UNIQUE 约束。

请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。

Primary key

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

主键必须包含唯一的值。

主键列不能包含 NULL 值。

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

创建唯一约束

unique 是唯一标识的意思create table 表名(字段名 数据类型 unique)create table sys_6(
id int unique comment '唯一的id',
name varchar(20) not null default '匿名' comment '姓名',
age tinyint(3) unsigned 
)

主键约束

primary key 关键字create table sys_7(
id int primary key,
name varchar(20) default '匿名'
)

自增长约束

关键字  primary key auto_incrementcreate table sys_10(id int primary key auto_increment,
name varchar(20) not null default '匿名'
)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • RedisStack十部曲之二:Redis的核心概念
  • python读取excel数据详细解说
  • 基于RK3568平台移植ffmpeg3.4.5及ffmpeg验证
  • 2408wtl,解析快捷方式
  • 解决UOS开发截图时电脑滴滴声
  • 求解组合优化问题的具有递归特征的无监督图神经网络
  • fastadmin后台报expandOnHover错误
  • Edible Fish 可食用鱼
  • 核心交换机的六个基础知识
  • ISO 26262中的失效率计算:SN 29500-11 Expected values for contactors
  • 1、正则表达式
  • 苹果手机通话记录怎么恢复?已总结了4个方法,快速恢复
  • 【WPF中的图形(Shape)】
  • Redis的内存淘汰策略- allkeys-lru
  • 【Vue】Vue3.5 新特性
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • Google 是如何开发 Web 框架的
  • JavaScript-如何实现克隆(clone)函数
  • 【5+】跨webview多页面 触发事件(二)
  • 4. 路由到控制器 - Laravel从零开始教程
  • es6(二):字符串的扩展
  • ES6之路之模块详解
  • JavaScript函数式编程(一)
  • js中的正则表达式入门
  • leetcode讲解--894. All Possible Full Binary Trees
  • vue2.0项目引入element-ui
  • 初识 webpack
  • 从tcpdump抓包看TCP/IP协议
  • 码农张的Bug人生 - 初来乍到
  • 如何设计一个比特币钱包服务
  • 使用 QuickBI 搭建酷炫可视化分析
  • 推荐一个React的管理后台框架
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • k8s使用glusterfs实现动态持久化存储
  • TPG领衔财团投资轻奢珠宝品牌APM Monaco
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • # Python csv、xlsx、json、二进制(MP3) 文件读写基本使用
  • #includecmath
  • #ubuntu# #git# repository git config --global --add safe.directory
  • $GOPATH/go.mod exists but should not goland
  • (CPU/GPU)粒子继承贴图颜色发射
  • (C语言)共用体union的用法举例
  • (带教程)商业版SEO关键词按天计费系统:关键词排名优化、代理服务、手机自适应及搭建教程
  • (二)Pytorch快速搭建神经网络模型实现气温预测回归(代码+详细注解)
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现
  • (接上一篇)前端弄一个变量实现点击次数在前端页面实时更新
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (转)菜鸟学数据库(三)——存储过程
  • ... fatal error LINK1120:1个无法解析的外部命令 的解决办法
  • .“空心村”成因分析及解决对策122344
  • .360、.halo勒索病毒的最新威胁:如何恢复您的数据?
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .NET 服务 ServiceController
  • .NET6 开发一个检查某些状态持续多长时间的类