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

4、操作

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

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

语法:

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

创建主表:

创建从表:

创建外键约束:

5、数据插入

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

(1)给主表添加数据

(2)给从表添加数据

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

6、删除数据

注意:

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

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

例如:

1、

2、

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

7、删除外检约束

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

格式:

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

实现:

相关推荐
极小狐10 分钟前
如何创建极狐GitLab 私密议题?
数据库·ci/cd·gitlab·devops·mcp
像风一样自由202034 分钟前
PySide与PyQt对比:为何PySide是更优选择
数据库·系统架构·pyqt
HashData酷克数据1 小时前
回顾|Apache Cloudberry™ (Incubating) Meetup·2025 杭州站
数据库
未来的JAVA高级开发工程师1 小时前
悲观锁与乐观锁
java·数据库
A charmer1 小时前
【MySQL】库的操作
数据库·mysql
Mr.Demo.1 小时前
[MySQL数据库] InnoDB存储引擎(四): InnoDB磁盘文件
数据库·mysql
maomi_95261 小时前
MySQL 在 CentOS 7 环境下的安装教程
大数据·数据库·mysql
书山有鹿2 小时前
PostgreSQL psql 命令和常用的 SQL 语句整理
数据库·sql·postgresql
GottdesKrieges4 小时前
OceanBase数据库磁盘空间管理
java·数据库·oceanbase
Themberfue5 小时前
Redis ⑦-set | Zset
java·开发语言·数据库·redis·sql·缓存