当前位置 : 主页 > 编程语言 > python >

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

来源:互联网 收集:自由互联 发布时间:2023-05-14
目录 python-pymysql获取字段名称-获取内容 获取字段名称-获取内容 若只执行 results = cursor.fetchall() python代码获取mysql字段名和注释 总结 python-pymysql获取字段名称-获取内容 获取字段名称-获
目录
  • python-pymysql获取字段名称-获取内容
    • 获取字段名称-获取内容
    • 若只执行 results = cursor.fetchall()
  • python代码获取mysql字段名和注释
    • 总结

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

      总结

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

      网友评论