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 # 包含这个表
相关推荐
xx155802862xx5 分钟前
centos转移mysql的数据存储目录
linux·mysql·centos
进击的CJR7 分钟前
MySQL 8.0 OCP 英文题库解析(十五)
数据库·mysql·开闭原则
羊小猪~~13 分钟前
数据库学习笔记(十五)--变量与定义条件与处理程序
数据库·人工智能·笔记·后端·sql·学习·mysql
正在努力Coding21 分钟前
MongoDB详细安装步骤(Windows 系统)
数据库·mongodb
TDengine (老段)27 分钟前
TDengine 基础功能——数据写入
大数据·数据库·物联网·oracle·时序数据库·tdengine·涛思数据
fie88891 小时前
MySQL:Prepared Statement 预处理语句
android·数据库·mysql
ErizJ1 小时前
Redis高级|Redis单线程VS多线程(基础)
数据库·redis
蜗牛编程之路1 小时前
RabbitMQ的使用--项目创建、五种工作模式、高级特性
数据库·分布式·rabbitmq
小鸡脚来咯1 小时前
redis穿透、击穿、雪崩
数据库·redis·缓存
厚衣服_32 小时前
第18篇:数据库中间件架构中的服务治理与限流熔断机制设计
数据库·中间件·架构