一尘不染

检查表是否存在而不使用“从...中选择”

mysql

有没有一种方法可以检查表是否存在 而无需 从表中选择和检查值?

也就是说,我知道我可以SELECT testcol FROM testtable检查返回的字段数,但是似乎必须有一种更直接/更优雅的方法。


阅读 338

收藏
2020-05-17

共1个答案

一尘不染

您无需计数。

SELECT 1 FROM testtable LIMIT 1;

如果没有错误,则表存在。

或者,如果您想正确,请使用INFORMATION_SCHEMA

SELECT * 
FROM information_schema.tables
WHERE table_schema = 'yourdb' 
    AND table_name = 'testtable'
LIMIT 1;

或者,您可以使用 SHOW TABLES

SHOW TABLES LIKE 'yourtable';

如果结果集中有一行,则表存在。

2020-05-17