约束含义:

一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性

分类:六大约束

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基础--常见的表的约束介绍(一)相关推荐

  1. mysql的常见的外键约束

    一  mysql的常见的外键约束策略 设计外键时,mysql提供了4种外键关联策略 1.RESTRICT 限制(默认) 如果有外键关联了tb_class 的id,则tb_class 不能删除被关联的记 ...

  2. 【MySQL基础教程】DML语句详细介绍

    前言 本文为 [MySQL基础教程]DML语句详细介绍 相关知识,DML英文全称是Data Manipulation Language(数据操作语言),用来对数据库中表的数据记录进行增.删.改操作.下 ...

  3. 【MySQL基础教程】DDL语句详细介绍

    前言 本文为 [MySQL基础教程]DDL语句 相关内容进行介绍,下边将对数据库操作(包括:查询所有数据库.查询当前数据库.创建数据库.删除数据库.切换数据库等),表操作(包括:查询创建.数据类型.修 ...

  4. MYSQL基础笔记(三)-表操作基础

    数据表的操作 表与字段是密不可分的. 新增数据表 1 Create table [if not exists] 表名( 2 字段名 数据类型, 3 字段名 数据类型, 4 字段n 数据类型 --最后一 ...

  5. Mysql基础篇(5)—— 约束

    为了保证数据的完整性,防止数据库中存在不符合语义的数据存在,是表级的强制规定. 约束的分类 根据约束数据列的限制,可分为: 单列约束:每个约束只约束一列 多列约束:每个约束可以约束多列数据 根据约束的 ...

  6. 【MySQL基础教程】DQL语句详细介绍

    前言 本文为 [MySQL基础教程]DQL语句 相关内容介绍,下边具体将对DQL语句基本语法,基础查询,条件查询,聚合函数,分组查询,排序查询,分页查询,相关案例,执行顺序等进行详尽介绍~

  7. mysql的altertable_mysqlaltertable修改表命令详细介绍

    MySQL ALTER语法如下: ALTER [IGNORE] TABLE tbl_name alter_spec [, alter_spec ...] alter_specification: AD ...

  8. MYSQL基础常见常用语句200条

    数据库 # 查看所有的数据库 SHOW DATABASES ; # 创建一个数据库 CREATE DATABASE k; # 删除一个数据库 DROP DATABASE k; # 使用这个数据库 US ...

  9. 【MySQL基础篇】四、约束、多表查询、事务

    文章目录 参考资料 1. 约束 1.1 概述 1.2 约束演示 1.3 外键约束 1.4 练习 2. 多表查询 2.1 多表关系 2.2 多表查询概述 2.3 内连接 2.4 外连接 2.5 自连接 ...

最新文章

  1. 联合索引最左匹配原则成因
  2. 用飞桨做自然语言处理:神经网络语言模型应用实例
  3. 后盾网lavarel视频项目---5、淘宝镜像cnpm的原理及如何使用
  4. math and date、ajax、画布
  5. 如何发表高水平论文(转载)
  6. OpenCV中GPU模块使用
  7. HDU 6188 Duizi and Shunzi
  8. ReactNative学习笔记(二)Flex布局
  9. java获取500错误_HTTP 500错误
  10. 001 Hello Security 的框架搭建
  11. frisby用例动态链
  12. 习题3.9 堆栈操作合法性 (20分)
  13. AJAX JSONP源码实现(原理解析)
  14. 关于js的冒泡--新手踩坑案例
  15. 基于Surface的视频编解码与OpenGL ES渲染
  16. HDU 2056 Rectangles
  17. 我常用的那些 Git 命令
  18. 为DPDK eal动态库添加新函数 ld不过的问题
  19. linux+硬盘rd5,BackTrack5(BT5)硬盘安装完美教程 亲测可用
  20. 帝国网站mysql 数据库开发_帝国cms操作数据库函数范例(二次开发)

热门文章

  1. 虚拟DOM和Diff算法 - 入门级
  2. 《认知设计:提升学习体验的艺术》——小结
  3. 字符串面试题(一)— 字符串逆序
  4. secureCRT的安装及破解
  5. 停用nfs导致cacti无法抓取snmp数据
  6. iPhone开发中的一些小技巧
  7. TrueSec引导的Linux系统和安全检测工具预览
  8. 开篇语 2008.8.11
  9. cac会议投稿难度大吗_发表 SCI 论文有多难?
  10. 员工没热情?这8个简单方法比加薪都管用