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 # 包含这个表
相关推荐
q***071418 小时前
Spring Boot 从 2.7.x 升级到 3.3注意事项
数据库·hive·spring boot
秋天之落叶18 小时前
使用ADO将excel表内容加载到mssql表中的长度问题
数据库·sqlserver·excel
毕设十刻18 小时前
基于Vue的售票系统开发3g480(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js
q***318918 小时前
如何查询SQL Server数据库服务器的IP地址
服务器·数据库·tcp/ip
Wang's Blog18 小时前
MySQL: 数据库读写分离与负载均衡的实现方式及深度分析
数据库·mysql·负载均衡
beijingliushao19 小时前
93-MongoDB-Linux
linux·数据库·mongodb
Hello.Reader19 小时前
使用 Flink CDC Elasticsearch Pipeline Connector 打通 MySQL 与 Elasticsearch 的实时链路
mysql·elasticsearch·flink
Navicat中国19 小时前
Navicat 高频问题速解:PostgreSQL / MySQL / SQL Server / MongoDB / 达梦
数据库·mysql·mongodb·postgresql·navicat
咖啡の猫19 小时前
Python中的输出函数
开发语言·数据库·python