python-pymysql获取字段名称-获取内容
获取字段名称-获取内容
import pymysql # 连接数据库 db = pymysql.connect(host='192.168.254.109', user='root', password='123456', database='blog') # 使用cursor()方法创建一个游标对象 cursor = db.cursor() # 查询语句 sql = """select * from a""" # 执行 sql语句 cursor.execute(sql) # 查询全部 results = cursor.fetchall() # 获取表结构 cursor.description fields = [field[0] for field in cursor.description] # 序列化 成字典 zip 把两个可迭代对象合并成2维元组。然后用dict 转化为字典。 res = [dict(zip(fields, result)) for result in results] print(res) # 关闭游标和数据库的连接 cursor.close() db.close() pro_res = """ [{'id': 1, 'name': '111', 'create_time': datetime.datetime(2022, 1, 6, 11, 6, 42), 'update_time': datetime.datetime(2022, 1, 6, 11, 6, 42)}, {'id': 2, 'name': '222', 'create_time': datetime.datetime(2022, 1, 6, 11, 36, 4), 'update_time': datetime.datetime(2022, 1, 6, 11, 36, 4)}]"""
若只执行 results = cursor.fetchall()
1 产出的结果都是 元组 且不包含字段名称的.
2 使用pandas去解析这个 results也无法产出字段的.
python代码获取mysql字段名和注释
# coding=utf-8 import pymysql def get_mysql_zi_duan(): conn = pymysql.connect(host='192.168.', port=3306, user='hs', passwd='xi', db='db_x', charset='utf8') cursor01 = conn.cursor() cursor01.execute( "select column_name, column_comment from information_schema.columns where table_schema ='db_xingyun' and table_name = 'api_ind_guan_yi_s_d'") all_info = cursor01.fetchall() # 数据库字段名和注释 # print(all_info) zi_duan_ming = [] zhushi = [] for data in all_info: zi_duan_ming.append(data[0]) zhushi.append(data[1]) # print(data[0]) print(str(zi_duan_ming).replace('[','').replace(']','').replace("'",'')) print(zhushi) cursor01.close() conn.close() if __name__ == '__main__': # 获取一个表的 所有字段名 get_mysql_zi_duan()
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
原文地址:https://blog.csdn.net/Ly_Word/article/details/122340439