我需要只使用一个查询来选择没有视图的表名范围:
例子:
SHOW FULL TABLES LIKE '%table%' WHERE "Table_type"<>'VIEW'
MySQL 不允许在一个查询中使用这两个运算符,它使用Tables_in_(mydbname)
包含 DB 名称的愚蠢的列名,而不是使用像“Table_name”这样的简单列名。问题是我不知道数据库名称,所以我不能使用以下查询:
SHOW FULL TABLES WHERE "Table_type"<>'VIEW' AND "Tables_in_????" LIKE '%table%'
最好使用数字而不是名称,例如:
SHOW FULL TABLES WHERE COLUMN(1) LIKE '%table%' AND COLUMN(2) <>'VIEW'
但没有这样的功能。
我不能使用 INFORMATION_SCHEMA 因为对这个表的访问可能会受到托管服务提供商的限制(或者我错了?)而且我的应用程序是为了广泛分发。
你会给我什么建议?