iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL六种约束的示例详解
  • 132
分享到

MySQL六种约束的示例详解

MySQL六种约束MySQL约束 2023-02-21 10:02:09 132人浏览 独家记忆
摘要

目录什么是约束外键约束什么是约束 作用于表上的规则,限制存储在表中的数据 约束分类: 约束描述关键字非空约束该字段数据不能为nullNOT NULL唯一约束该字段数据唯一不重复UNIQUE主键约束一行数据的唯一标识(非空

什么是约束

作用于表上的规则,限制存储在表中的数据

约束分类:

约束描述关键字
非空约束该字段数据不能为nullNOT NULL
唯一约束该字段数据唯一不重复UNIQUE
主键约束一行数据的唯一标识(非空且唯一)PRIMARY KEY
默认约束未指定该字段值则使用默认值DEFAULT
检查约束(8.0.16以后)该字段值满足某一条件CHECK
外键约束为两张表建立连接(数据一致、完整)FOREIGN KEY

创建表示例:

CREATE TABLE info(
	`id` INT UNIQUE auto_increment PRIMARY KEY COMMENT'ID唯一标识',
	`name` VARCHAR(10) NOT NULL UNIQUE COMMENT'姓名',
	`age` INT CHECK(age > 0 && age < 120) COMMENT '年龄',
	`status` CHAR(1) DEFAULT'1' COMMENT'状态',
	`gender` CHAR(1) COMMENT'性别'
)COMMENT '用户信息表';

外键约束

外键通常用来为两张表建立连接,两张利用外键连接的表被称为父子表。

子表当中会设定一个外键字段用于关联父表的主键字段

即拥有外键的表是子表(从表),该外键对应另一个表的主键这个表称之为父表

如果没有设置外键,仅仅是将子表开了一个字段对应上了父表的主键字段在Mysql层面是依旧没有任何关系的。此时两个表仅存在逻辑关系,无法保证数据的完整性和一致性

创建外键语法:

-- 在创建表时创建
CREATE TABLE son(
	...
	CONSTRaiNT [外键名称] FOREIGN KEY(外键字段名) REFERENCES 主表名(主表主键字段名)
);
-- 创建表后为表添加主键
ALTER TABLE 表名	ADD CONSTRAINT 外键名称 FOREIGN KEY(外键字段名) REFERENCES 主表(主表主键字段名)
-- 删除外键
alter table 表名 drop foreign key 外键名称;

创建示例:

# 父表
CREATE TABLE father(
	`id` INT auto_increment PRIMARY KEY COMMENT'父表ID',
	`name` VARCHAR(20) NOT NULL COMMENT'姓名',
	`passWord` VARCHAR(20) DEFAULT(0000)
);
INSERT INTO father VALUES(null,'小三','1234'),(null,'小四','1234'),(null,'小五','1234'),(null,'小六','1234');
# 子表
CREATE TABLE son(
	`id` INT auto_increment PRIMARY KEY COMMENT'子表ID',
	`status` varchar(10) COMMENT '状态',
	`fa_id` INT COMMENT'外键',
	CONSTRAINT fk_father_son FOREIGN KEY(fa_id) REFERENCES father(id)
);
INSERT INTO son VALUES(null,'活',2),(null,'活',3),(null,'死',3),(null,'活',2);

上述示例 子表设置了外键,字段名为fa_id并关联到了父表主键id,外键名称为fk_father_son

创建完成后,我们添加几组数据。将几个son添加到表中,并设置外键字段属性为某个father。比如(null,‘活’,3),那么此时如果我们尝试去删除父表id=3的这一行数据,就会提示错误。因为两个表已经在mysql层面上进行了关联

总结

  • 从表的外键通常是主表的主键
  • 从表中外键的类型必须与主表中的主键类型一致
  • 主表数据发生变化时应注意从表数据的一致性问题

到此这篇关于Mysql六种约束的示例详解的文章就介绍到这了,更多相关MySQL六种约束内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL六种约束的示例详解

本文链接: https://www.lsjlt.com/news/196856.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL六种约束的示例详解
    目录什么是约束外键约束什么是约束 作用于表上的规则,限制存储在表中的数据 约束分类: 约束描述关键字非空约束该字段数据不能为nullNOT NULL唯一约束该字段数据唯一不重复UNIQUE主键约束一行数据的唯一标识(非空...
    99+
    2023-02-21
    MySQL六种约束 MySQL约束
  • MySQL六种约束是什么
    本文小编为大家详细介绍“MySQL六种约束是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“MySQL六种约束是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。什么是约束作用于表上的规则,限制存储在表中的数...
    99+
    2023-07-05
  • MySQL中常见的六个约束类型详解
    目录前言1. not null2. unique3. default4. primary key自增主键auto_increment5. foreign key6. check总结前...
    99+
    2024-04-02
  • MySQL主键约束和外键约束详解
    目录1、PRIMARY KEY2、FOREIGN KEY3、表的设计3.1 一对一3.2 一对多3.3 多对多1、PRIMARY KEY 上期我们讲述了 not null 和 unique 约束,而本期的第一个约束就是这...
    99+
    2023-03-13
    mysql主键约束和外键约束 mysql主键和外键
  • MySQL约束超详解
    目录MySQL约束操作1.非空约束 2.唯一约束3.主键约束4.外键约束5、级联MySQL约束操作 概念:对表中的数据进行限定,保证数据的正确性,有效性和完整性。 分类: ...
    99+
    2024-04-02
  • TypeScript泛型约束条件示例详解
    目录什么是泛型泛型的应用场景泛型约束(限制条件)泛型函数调用指定类型总结什么是泛型 两个值之间存在的对应关系,就可以用泛型来解决 泛型的应用场景 当一个函数的返回值的类型需要与此函数...
    99+
    2024-04-02
  • MySQL约束类型的示例分析
    这篇文章主要介绍MySQL约束类型的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!约束 约束保证数据的完整性和一致性约束分为表级约束和列级约束约束类型包括:NOT ...
    99+
    2024-04-02
  • MySQL数据库约束操作示例讲解
    目录一、约束是什么二、约束的具体操作Not NULLUNIQUE约束的组合使用PRIMARY KEYDEFAULTFOREIGN KEY一、约束是什么 约束就是,在创建表的时候,对表设置一些规则,只有满足这些规则,才可以...
    99+
    2022-11-15
    MySQL数据库约束 MySQL约束
  • MySQL约束constraint用法详解
    目录前言一:主键约束 primary key1.添加单列主键2.添加多列主键(联合主键)3.通过修改表结构添加主键4.删除主键约束二:自增长约束 auto_increment1.添加自增长约束2. 指定自增字段初始值三:...
    99+
    2023-05-12
    mysql约束constraint mysql约束怎么设置 mysql constraint
  • Mysql表的约束超详细讲解
    目录约束的概念空属性默认值列描述zerofill主键自增长唯一键外键约束的概念 约束:通过限制用户操作的方式,来达到维护数据本身安全,完整性的一套方案。 为什么要有约束? Mysql...
    99+
    2024-04-02
  • MySQL数据库表中的约束详解
    目录mysql表中的约束(constraint)约束分类非空约束唯一性约束复合约束主键约束自增列-AUTO_INCREMENT外键约束FOREIGN KEY约束CHECK约束DEFAULT约束MySQL表中的约束(con...
    99+
    2023-03-02
    MySQL表中的约束 MySQL数据库约束 MySQL约束的使用
  • MySQL数据库的约束限制详解
    目录一、介绍二、操作添加删除外键联级操作一、介绍 数据库的约束是对表中数据进行的一种限制,为了保证数据的正确性、有效性、完整性。 无论是在添加数据还是在删除数据的时候,都能提供帮助。...
    99+
    2022-11-13
    MySQL数据库 MySQL约束
  • MySQL约束与索引概念详解
    目录一、关系型数据库设计规则二、数据完整性和约束与索引的概念三、约束的应用一、关系型数据库设计规则 遵循ER模型和三范式 E entity 代表实体的意思 对应到数据库当中的一张表R relationship 代表关系的...
    99+
    2023-04-07
    MySQL约束与索引 MySQL约束 MySQL索引
  • MySQL中唯一性约束与NULL的示例分析
    这篇文章给大家分享的是有关MySQL中唯一性约束与NULL的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前言之前做的一个需求,简化描述下就是接受其他组的 MQ 的消息,...
    99+
    2024-04-02
  • MySQL数据库中数据约束的示例分析
    这篇文章主要介绍了MySQL数据库中数据约束的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。为了防止不符合规范的数据进入数据库,在用...
    99+
    2024-04-02
  • MySQL数据库中的外键约束详解
    外键是关系数据库中一种重要的数据完整性约束,它用于建立表与表之间的关联关系。外键约束指定了一个表的列或一组列必须存在于另一个表的主键...
    99+
    2023-09-22
    MySQL
  • mysql中常见的几种约束是什么
    小编给大家分享一下mysql中常见的几种约束是什么,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!mysql中常见的几种约束有:1、主键;2、默认值;3、唯一;4、外键;5、非空。约束是一种限制...
    99+
    2024-04-02
  • SQL Server中的约束(constraints)详解
    目录一、约束的分类二、约束命名三、主键约束1、在创建表的时候创建主键约束。2、在已存在的表上创建主键约束3、复合主键的创建四、外键约束4.1、创建表的时候创建外键4.2、在已存在的表...
    99+
    2024-04-02
  • 在 MySQL 中显示表命令的约束?
    您可以借助 SHOW 命令显示表上的约束。语法如下 -show create table yourTableName;上述命令将显示表 ENGINE 的所有约束。使用它,你甚至可以看到所有的列名和相应的数据类型。为了理解上面的MySQL语句...
    99+
    2023-10-22
  • SQL Server中的约束(constraints)详解
    SQL Server中的约束是一种用于限制表中数据的规则。它们可以应用于列级别或表级别,并确保数据库中的数据遵循特定的规则和完整性要...
    99+
    2023-08-16
    SQL Server
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作