MySQL表级约束和列级约束
MySQL中只要支持六种完整性约束,如表所示:其中check约束是MySQL8中提供的支持。
约束条件 |
约束描述 |
primary key |
主键约束,约束的值可唯一的标识对应的记录 |
not null |
非空字段的值不能为空 |
unique |
唯一约束,约束1字段的值是惟一的 |
check |
检查约束,限制某个字段的值取值范围 |
default |
默认值约束,约束字段的值自动递增 |
auto_increment |
自动增加位数,约束字段的值自动递增 |
foreign key |
外键约束,约束与表之间的关系 |
约束从作用上可以分为两类:
(1)列级约束:是对某一特定列的约束
(2)表级约束:用于对多个列一起的约束
列级约束有六种:主键Primary key、外键foreign key 、唯一 unique、检查 checck 、默认default 、非空/空值 not null/ null
表级约束有四种:主键、外键、唯一、检查
表级约束和列级约束的区别:
(1)列级约束:只能应用于一列上。
表级约束:可以应用于一列上,也可以应用在一个表中的多个列上。
(2)列级约束:包含在列定义中,直接跟在该列的其它定义之后 ,用空格分隔;不必指定列名
表级约束:与列定义相互独立,不包含在列定义中;与定义用‘,’分隔;必须指出要约束的列的名称
举个栗子:
1、表级约束
标红框的叫表级约束。
2、表级约束
标红框的叫表级约束。另外非空和默认只能用列级约束。
MySQL表级约束和列级约束相关推荐
- mysql表新增添加一列
mysql表新添加一列 有这样的需求,已经建立的表,随着需求的变化,会需要在这个表增加一列.当然可以新建表建立联系满足需求. 但就仅新增一列这个问题,可以有以下操作: ALTER ... ADD CO ...
- 关于MySQL表添加某一列和删除某一列
前言:MySQL是一种广泛使用的关系型数据库管理系统,它是一种开源的软件,由瑞典的MySQL AB公司开发的. 文章目录: 添加MySQL表中某一列 删除MySQL表中某一列 一.添加MySQL表中某 ...
- MySQL—表的完整性约束(外键约束)(一)
1.什么是完整性约束? 为防止不符合规范的数据存入数据库,在用户对数据进行插入.修改.删除等操作时,MySQL提供了一种机制来检查数据库中的数据是否满足规定的条件,以保证数据库中数据的准确性和一致性, ...
- mysql行级视图与列级视图_[数据库]--DML、DDL、TCL语言
DML语言(数据操作语言) 1.插入语句insert 语法1: insert into 表名(列名...) values(值...) 注意: 1.插入的值的字段必须和值匹配 2.插入的值的类型必须和字 ...
- 06_clickhouse、表和列的TTL规则与实践、表和列的TTL、列级TTL、表级TTL、列级TTL示例、表级TTL示例
3.表和列的TTL规则与实践 3.1.表和列的TTL 3.2.列级TTL 3.3.表级TTL 3.4.列级TTL示例 3.5.表级TTL示例 3.表和列的TTL规则与实践 3.1.表和列的TTL 定义 ...
- 五大列级庄_1855列级庄分级
葡萄酒的世界存在着很多分级制度,不同的国家和产区之间更是拥有着当地的分级制度.比如:格拉芙产区.圣凯美隆产区等.但是,在这些分级系统中不得不提的是大名鼎鼎的1855列级庄分级,大家所熟知五大庄:拉菲( ...
- MySQL - 表的增删改查(约束+聚合、联合查询)
本节目标: 数据库约束 表的关系 新增: 删除 修改 查询 1.数据库约束 1.1约束类型 NOT NULL -指示某列不能存储 NULL值. UNIQUE -保证某列的每行必须有唯一的值. DEFA ...
- MySQL—表的完整性约束(外键约束)(二)
1.班级表 2.学生表 例1:删除班级5:如果直接删除的话肯定不行,因为有外键约束 delete from t_class where cno=5; 1451 - Cannot delete or u ...
- 删除列级完整性约束_列级完整性约束条件与表级完整性约束条件有什么不同
2017-06-18 回答 多个表之间有参照完整性约束. check 一般是检查自己这个表的 约束, 例如 什么性别只能是 0/1, 年龄不能大于 100 之类的检查. 多表参照, 一般是使用 外键约 ...
最新文章
- BZOJ4491: 我也不知道题目名字是什么
- CS8900A网络驱动程序移植
- 用python画玫瑰花教程-使用Python画一朵玫瑰花
- 高效终端设备视觉系统开发与优化
- Android 4 学习(19):Services
- 1.C#项目Java化注意事项
- 解决VScode安装Babel转码器报错:无法将“cnpm“项识别为cmdlet\函数、脚本文件或可运行程序的名称的问题
- vba循环通过键盘某个按键按下退出循环_默纳克3000+最新系统小键盘的使用方法...
- jcreator把class字节码文件转成.java源文件_如何将.JAVA文件编译成.CLASS文件.说明方法和工具,或用JCreator如何操作?...
- 将不确定变为确定~Linq to SQL不能随机排序吗?
- while方法判断回文数的两种方式以及使用String 的reverse方法
- 欧几里得算法、扩展欧几里得算法、求逆元、中国剩余定理、扩展中国剩余定理
- 华为手机投屏电脑_手机投屏干货分享:华为如何投屏到电视机?
- 1.2、SRv6(Segment Routing Over IPv6) 介绍
- 幸运抽奖系统带后台源码
- 中介者(Mediator)模式实例
- 第11届蓝桥杯 Java C 组真题 A:指数计算
- EBS R12中FND凭证打印警告:OPP响应超时
- 八字易经算法之用JAVA实现完整排盘系统
- Linux安装Oracle报Checking operating system version must be redhat-3, SuSE-9, redhat-4, UnitedLin
热门文章
- 用python绘制好看的图形_怎么用Python画出好看的词云图?
- python 中arange函数_浅谈Python中range与Numpy中arange的比较
- 使用 保存文件_使用SaveFileDialog调用保存文件对话框
- 雨林木风win11 64位安全旗舰版镜像V2021.09
- Win10系统电脑查看无线密码的方法
- @Autowired注解能用在static属性吗?autowired注入static属性上为null
- try catch finally 中包含return的几种情况,及返回结果
- 修改linux远程主机名命令hostname
- 什么是超文本 超链接 HTML有什么特点,什么是超文本?什么是超链接?
- 鸿蒙之火是什么意思,鸿蒙突然火了!鸿蒙是什么?