python-pymysql获取字段名称-获取内容方式

目录

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()

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容