我试图确定mysql数据库中的所有表和视图都使用了哪些表和视图。例如,我需要看到:
table A uses view B
table A also uses table C
table C uses table D
table C also uses view X
我知道我必须对information\u schema执行一个查询,并将其与information\u schema的另一个查询连接起来,但不知道这些查询应该是什么。
感谢您的帮助。
我试图确定mysql数据库中的所有表和视图都使用了哪些表和视图。例如,我需要看到:
table A uses view B
table A also uses table C
table C uses table D
table C also uses view X
我知道我必须对information\u schema执行一个查询,并将其与information\u schema的另一个查询连接起来,但不知道这些查询应该是什么。
感谢您的帮助。
1条答案
按热度按时间wfsdck301#
要获取给定数据库视图的from子句中使用的表和视图的列表,可以使用:
mysql很有帮助地扩展了存储视图定义时使用的表名,使之也包含模式名,然后用反勾号转义lot。通过匹配完整字符串而不仅仅是表名,我们可以消除与部分字符串、列名和别名的匹配。
我假设当你在问题中说“表c使用表d”时,你指的是两者之间的外键关系。你可以从
information_schema.key_column_usage
.例如