python 获取mysql 库信息/表信息/表结构/索引
核心代码
import pymysql
class SQLgo(object):
def __init__(self, ip=None, user=None, password=None, db=None, port=None):
self.ip = ip
self.user = user
self.password = password
self.db = db
self.port = int(port)
self.con = object
@staticmethod
def addDic(theIndex, word, value):
theIndex.setdefault(word, []).append(value)
def __enter__(self):
self.con = pymysql.connect(
host=self.ip,
user=self.user,
passwd=self.password,
db=self.db,
charset='utf8mb4',
port=self.port
)
return self
def __exit__(self, exc_type, exc_val, exc_tb):
self.con.close()
def search(self, sql=None):
data_dict = []
id = 0
with self.con.cursor(cursor=pymysql.cursors.DictCursor) as cursor:
sqllist = sql
cursor.execute(sqllist)
result = cursor.fetchall()
for field in cursor.description:
if id == 0:
data_dict.append({'title': field[0], "key": field[0], "fixed": "left", &