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

4、操作

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

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

语法:

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

创建主表:

创建从表:

创建外键约束:

5、数据插入

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

(1)给主表添加数据

(2)给从表添加数据

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

6、删除数据

注意:

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

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

例如:

1、

2、

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

7、删除外检约束

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

格式:

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

实现:

相关推荐
Databend19 小时前
如何打造AI时代的数据基石 | Databend Meetup 上海站回顾
数据库
q_191328469519 小时前
基于Springboot2+Vue2的旅游景点购票系统
java·vue.js·spring boot·后端·mysql·毕业设计·计算机毕业设计
wudl556619 小时前
向量数据库--FAISS
数据库·faiss
冲的运维日常19 小时前
Redis:查看RDB文件内容
数据库·redis·缓存
艾体宝IT19 小时前
艾体宝干货 | Redis Java 开发系列#1 从零开始的环境搭建与实践指南
数据库
梁bk19 小时前
Redis网络模型 - 从fd和I/O模型到redis网络模型,再到I/O多线程,7000字长文预警
网络·数据库·redis
w***i29419 小时前
【SQL】count(1)、count() 与 count(列名) 的区别
数据库·sql
Hui Baby19 小时前
mysql的自定义HINT语法-实战
数据库·mysql·adb
一 乐19 小时前
鲜花销售|基于springboot+vue的鲜花销售系统设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·spring
youmdt19 小时前
mysql-存储引擎
数据库·mysql