Mysql基础--常见的表的约束介绍(一)
约束含义:
一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性
分类:六大约束
NOT NULL:非空,
用于保证该字段的值不能为空比如姓名、学号等
DEFAULT:默认,
用于保证该字段有默认值比如性别
PRIMARY KEY:主键,
用于保证该字段的值具有唯一性,并且非空比如学号、员工编号等
UNQUE:唯一,
用于保证该字段的值具有唯一性,可以为空比如座位号
CHECK:检查约束【mysgl中不支持】
比如年龄、性别
FOREIGN KEY:外键,
用于限制两个表的关系,用于保证该字段的值必须来自于主表的关联列的值
在从表添加外键约束,用于引用主表中某列的值
比如学生表的专业编号,员工表的部门编号,员工表的工种编号
添加约束的时机:
1.创建表时
2.修改表时
约束的添加分类:
列级约束:
六大约束语法上都支持,但外键约束没有效果
表级约束:
除了非空、默认,其他的都支持
创建表时添加列级约束
语法:
直接在字段名和类型后面追加约束类型即可.
只支持:默认、非空、主键、唯—
USE student;
CREATE TABLE stu(id INT PRIMARY KEY,#主键stuname VARCHAR(20) NOT NULL,#非空gender CHAR(1) CHECK(gender='男'OR gender='女'),#检查seat INT UNIQUE, #唯一age INT DEFAULT 18
)
Mysql基础--常见的表的约束介绍(一)相关推荐
- mysql的常见的外键约束
一 mysql的常见的外键约束策略 设计外键时,mysql提供了4种外键关联策略 1.RESTRICT 限制(默认) 如果有外键关联了tb_class 的id,则tb_class 不能删除被关联的记 ...
- 【MySQL基础教程】DML语句详细介绍
前言 本文为 [MySQL基础教程]DML语句详细介绍 相关知识,DML英文全称是Data Manipulation Language(数据操作语言),用来对数据库中表的数据记录进行增.删.改操作.下 ...
- 【MySQL基础教程】DDL语句详细介绍
前言 本文为 [MySQL基础教程]DDL语句 相关内容进行介绍,下边将对数据库操作(包括:查询所有数据库.查询当前数据库.创建数据库.删除数据库.切换数据库等),表操作(包括:查询创建.数据类型.修 ...
- MYSQL基础笔记(三)-表操作基础
数据表的操作 表与字段是密不可分的. 新增数据表 1 Create table [if not exists] 表名( 2 字段名 数据类型, 3 字段名 数据类型, 4 字段n 数据类型 --最后一 ...
- Mysql基础篇(5)—— 约束
为了保证数据的完整性,防止数据库中存在不符合语义的数据存在,是表级的强制规定. 约束的分类 根据约束数据列的限制,可分为: 单列约束:每个约束只约束一列 多列约束:每个约束可以约束多列数据 根据约束的 ...
- 【MySQL基础教程】DQL语句详细介绍
前言 本文为 [MySQL基础教程]DQL语句 相关内容介绍,下边具体将对DQL语句基本语法,基础查询,条件查询,聚合函数,分组查询,排序查询,分页查询,相关案例,执行顺序等进行详尽介绍~
- mysql的altertable_mysqlaltertable修改表命令详细介绍
MySQL ALTER语法如下: ALTER [IGNORE] TABLE tbl_name alter_spec [, alter_spec ...] alter_specification: AD ...
- MYSQL基础常见常用语句200条
数据库 # 查看所有的数据库 SHOW DATABASES ; # 创建一个数据库 CREATE DATABASE k; # 删除一个数据库 DROP DATABASE k; # 使用这个数据库 US ...
- 【MySQL基础篇】四、约束、多表查询、事务
文章目录 参考资料 1. 约束 1.1 概述 1.2 约束演示 1.3 外键约束 1.4 练习 2. 多表查询 2.1 多表关系 2.2 多表查询概述 2.3 内连接 2.4 外连接 2.5 自连接 ...
最新文章
- 联合索引最左匹配原则成因
- 用飞桨做自然语言处理:神经网络语言模型应用实例
- 后盾网lavarel视频项目---5、淘宝镜像cnpm的原理及如何使用
- math and date、ajax、画布
- 如何发表高水平论文(转载)
- OpenCV中GPU模块使用
- HDU 6188 Duizi and Shunzi
- ReactNative学习笔记(二)Flex布局
- java获取500错误_HTTP 500错误
- 001 Hello Security 的框架搭建
- frisby用例动态链
- 习题3.9 堆栈操作合法性 (20分)
- AJAX JSONP源码实现(原理解析)
- 关于js的冒泡--新手踩坑案例
- 基于Surface的视频编解码与OpenGL ES渲染
- HDU 2056 Rectangles
- 我常用的那些 Git 命令
- 为DPDK eal动态库添加新函数 ld不过的问题
- linux+硬盘rd5,BackTrack5(BT5)硬盘安装完美教程 亲测可用
- 帝国网站mysql 数据库开发_帝国cms操作数据库函数范例(二次开发)