查看某个数据库中的全部表:
sql
SELECT table_name
FROM information_schema.tables
WHERE table_schema = '数据库名'
因此查看某个库中的某个表可以使用:
sql
SELECT table_name
FROM information_schema.tables
WHERE table_schema = '数据库名'
AND table_name = '表名称';
在pymysql中,可以写一个简单的工具函数,用于查询某个数据库中是否包含某个表:
这里的_query函数请参考博客:python使用pymysql总是超时的解决方案
py
from utils.sql_utils import _query
def sql_exists(database, table_name):
sql_info = _query(f"""
SELECT table_name
FROM information_schema.tables
WHERE table_schema = '{database}'
AND table_name = '{table_name}';
""", fetchone=True)
if sql_info is None:
return False # 不包含这个表
else:
return True # 包含这个表