Mysql判断某个数据库中是否包含某个表,与pymysql工具函数

查看某个数据库中的全部表:

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 # 包含这个表
相关推荐
东北甜妹2 分钟前
Redis Cluster 集群
数据库
(Charon)8 分钟前
【kv存储】基于 C 的 KV 存储项目:主从单向同步是怎么实现的
数据库
Jul1en_12 分钟前
【Redis】String 类型命令、编码方式与应用场景
数据库·redis·缓存
lifallen21 分钟前
一篇文章讲透 Flink State
大数据·数据库·python·flink
赵渝强老师25 分钟前
【赵渝强老师】MySQL数据库的分库与分表
数据库·mysql
XDHCOM31 分钟前
利用MSSQL解析优化数据库性能,提升效率,驱动业务创新与稳定发展
数据库·sqlserver
·云扬·1 小时前
MySQL分区实战指南:从原理到落地的完整攻略
数据库·mysql
雨墨✘1 小时前
PHP怎么执行Shell命令_exec与shell_exec区别说明【说明】
jvm·数据库·python
Trouvaille ~1 小时前
【MySQL篇】复合查询:多表数据的整合
数据库·sql·mysql·面试·复合查询·基础入门·多表连接
Project_Observer1 小时前
列表视图中的筛选列
大数据·数据库·深度学习·机器学习·深度优先