[Mysql] Mysql的多表查询----多表关系(下)

4、操作

方式二:创建表之后设置外键约束

外键约束也可以在修改表时添加,但是添加外键约束的前提是:从表中外键列中的数据必须与主表中主键列中的数据一致或者是没有数据。

语法:

alter table <从表名> add constraint <外键名> foreign key (<列名>) references <主表名> (<列名>);

创建主表:

创建从表:

创建外键约束:

5、数据插入

注意:当主表和从表有外键约束是,给主表和从表添加数据时,必须先给主表添加数据。

(1)给主表添加数据

(2)给从表添加数据

注意:注意给从表添加数据时,外键列的值不能随便写,必须依赖主表的主键列--即:外键列中的值只能是主键列上的值。

6、删除数据

注意:

(1)主表的数据被从表依赖时(即:主列中的值在外列中的值出现)时,不能删除,否则可以删除。

(2)从表的数据可以随便删除。

例如:

1、

2、

注意:删除表时,只能先删除从表,再删除主表。

7、删除外检约束

当一个表不需要外键约束时,就需要从表将其删除。外键一旦删除,就会解除主表和从表间的关联关系。

格式:

alter table <从表名> drop foreign key <外键约束名> ;

实现:

相关推荐
weixin_4585801241 分钟前
如何在 Go 中直接将 AST 编译为可执行二进制文件?
jvm·数据库·python
Highcharts.js3 小时前
Highcharts Grid 中文站正式上线:表格数据处理的全新选择
前端·javascript·数据库·表格数据·highcharts·可视化图表·企业级图表
Elastic 中国社区官方博客6 小时前
Elasticsearch:使用 Agent Builder 的 A2A 实现 - 开发者的圣诞颂歌
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
2301_816660216 小时前
PHP怎么处理Eloquent Attribute Inference属性推断_Laravel从数据自动推导类型【操作】
jvm·数据库·python
qq_372154237 小时前
Go 中自定义类型与基础类型的显式转换规则详解
jvm·数据库·python
_下雨天.8 小时前
NoSQL之Redis配置与优化
数据库·redis·nosql
LiAo_1996_Y8 小时前
CSS如何实现文字渐变效果_通过background-clip实现艺术字
jvm·数据库·python
2401_887724508 小时前
CSS如何让表单在手机端友好展示_利用Flexbox实现堆叠排版
jvm·数据库·python
数据库小组8 小时前
MySQL 删库后怎么恢复?binlog2sql 之外,NineData 还能做什么
数据库·sql·mysql·安全·数据·ninedata·删库
zhangchaoxies8 小时前
Layui轮播图(carousel)怎么设置自动播放间隔
jvm·数据库·python