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 # 包含这个表
相关推荐
YashanDB2 小时前
【YashanDB知识库】XMLAGG方法的兼容
数据库·yashandb·崖山数据库
独行soc2 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍11基于XML的SQL注入(XML-Based SQL Injection)
数据库·安全·web安全·漏洞挖掘·sql注入·hw·xml注入
小林coding2 小时前
阿里云 Java 后端一面,什么难度?
java·后端·mysql·spring·阿里云
风间琉璃""3 小时前
bugkctf 渗透测试1超详细版
数据库·web安全·网络安全·渗透测试·内网·安全工具
drebander3 小时前
SQL 实战-巧用 CASE WHEN 实现条件分组与统计
大数据·数据库·sql
IvorySQL3 小时前
IvorySQL 4.0 发布:全面支持 PostgreSQL 17
数据库·postgresql·开源数据库·国产数据库·ivorysql
18号房客3 小时前
高级sql技巧进阶教程
大数据·数据库·数据仓库·sql·mysql·时序数据库·数据库架构
Dawnㅤ3 小时前
使用sql实现将一张表的某些字段数据存到另一种表里
数据库·sql
张声录13 小时前
【ETCD】【实操篇(十二)】分布式系统中的“王者之争”:基于ETCD的Leader选举实战
数据库·etcd
运维&陈同学3 小时前
【模块一】kubernetes容器编排进阶实战之基于velero及minio实现etcd数据备份与恢复
数据库·后端·云原生·容器·kubernetes·etcd·minio·velero