我想用Mysql检查一下,如果存在3个表,但不知何故,这对多于1个表不起作用?如何检查是否存在3个表?
Select count(*) From information_schema.tables
where table_schema = 'userbook' and table_name = 'entry'
and table_name = 'stats' and table_name = 'user';
我正在使用MySQL-Connector和Microsoft Visual Studio 2012。
答案 0 :(得分:2)
现在,您正在寻找一个名称为entry
名称为stats
且名称为user
的表格 - 所有这些都在同一时间。你的COUNT总是0!
您需要使用OR
运算符,如下所示:
SELECT COUNT(*)
FROM information_schema.tables
WHERE
table_schema = 'userbook' AND
(table_name = 'entry' OR
table_name = 'stats' OR
table_name = 'user')
您还可以使用IN
,这有点容易维护:
SELECT COUNT(*)
FROM information_schema.tables
WHERE
table_schema = 'userbook' AND
table_name IN ('entry','stats','user')
在这两种情况下:如果计数为3,则存在所有三个表。