检索 MySQL 视图的综合列表
问题描述:
列出存储的所有视图事实证明,在特定数据库中存在问题。尽管存在视图,但使用约定 SELECT table_name FROM information_schema.views WHERE information_schema.views.table_schema LIKE 'view%' 会生成一个空集。
使用 SELECT * from views 和 SELECT * from table 的其他尝试会产生结果错误消息“数据库名称不正确。”
根本原因:
由于 MySQL 对 mysql.bak 的隐式更改,上述命令无法访问信息模式使用 use 命令切换到 information_schema 数据库后的数据库。
解决方案:
要成功检索数据库中所有视图的列表,请执行以下查询:
SHOW FULL TABLES IN database_name WHERE TABLE_TYPE LIKE 'VIEW';
将database_name 替换为包含您要枚举的视图的数据库的名称。这种修改后的方法使用 SHOW FULL TABLES 命令而不是 SELECT * 来获取数据库表及其类型的详细列表。通过将 TABLE_TYPE 过滤器指定为“VIEW”,查询将仅生成专门指定为视图的表。
以上是如何列出特定数据库中的所有MySQL视图?的详细内容。更多信息请关注PHP中文网其他相关文章!