数据库
首页 > 数据库> > 具有FK约束的MySQL / InnoDB:查找受级联删除影响的表/行

具有FK约束的MySQL / InnoDB:查找受级联删除影响的表/行

作者:互联网

我有一个FK约束设置的MySQL / InnoDB数据库.如果我删除“根”表中的一行,则从属表将删除相应的行.

如何显示已删除的内容,或者至少显示哪些表格受到了影响?

有什么简单的方法还是我需要写一个工具来比较之前和之后?

复制日志会显示最新情况吗?

解决方法:

不,无法显示已删除的内容
否,它不会显示在复制日志中

我唯一想到的就是查询information_schema视图,以查看哪些表具有FK约束,具体取决于“根”表.

SELECT DISTINCT
  TABLE_NAME FROM REFERENTIAL_CONSTRAINTS 
WHERE 
  CONSTRAINT_SCHEMA = 'yourDatabase'
  AND REFERENCED_TABLE_NAME = 'rootTable'
  AND DELETE_RULE = 'CASCADE'

标签:foreign-keys,innodb,cascading-deletes,cascade,mysql
来源: https://codeday.me/bug/20191102/1991231.html