python2.7 获取所有mysql数据库名称和表名称

import pymysql

def get_all_tables(db_name):
"""
获取数据库中的所有表
"""
connection = pymysql.connect(host='10.X.XX.XXX',
user='用户名',
password='密码',
db=‘数据库名称’,
charset='utf8',
cursorclass=pymysql.cursors.DictCursor)

tables = []
try:
with connection.cursor() as cursor:
sql = '''SHOW TABLES''' # 同理 改成 '''SHOW DATABASES''' 即可获取所有数据库名称
cursor.execute(sql)
table = cursor.fetchall() # 获取所有(输出是列表,列表中的每个元素是字典,字典的KEY是Tables_in_拼接数据库名称)
for k in range(len(table)): # 提取表名
tables.append(table[k]['Tables_in_数据库名称'])
finally:
connection.commit()
connection.close()
return tables

get_all_tables('db_name')

posted on 2019-04-08 15:13  本命年  阅读(2350)  评论(0编辑  收藏  举报