因为要判断数据库是否有某个表,使用这个查询
SELECT COUNT(0) FROM information_schema.TABLES WHERE table_name ='table_name'
正常来说,如果没有该表,会返回0
当时写代码调试的时候,发现返回了1,数据库的确是没有这个表。
查看了Select * 后,发现是测试库中,存在这张表,原来他返回的是Mysql中所有的表。
加上库判断:
SELECT * FROM information_schema.TABLES WHERE table_name ='table_name' and TABLE_SCHEMA='SCHEMA_Name';
记录下,备忘
当检查数据库中是否存在特定表时,通常会使用SQL查询。然而,作者在实践中遇到返回结果与预期不符的情况,发现未指定数据库导致返回了所有匹配的表。通过添加对数据库名的限制,修正后的查询确保了准确判断。这是一个关于数据库查询和SQL使用的经验分享,以备忘。
1989

被折叠的 条评论
为什么被折叠?



