悠龠111 发表于 2020-5-20 20:00:00

关于数据写入Execl表格问题

求助,我现在是把数据库里面的      '考生号', '学号', '姓名', '性别', '身份证号', '专业名称','checked_time','photo'   等字段全部获取到然后写入到Execl表格,我要怎么改才可以只获取到前6个字段,后面两个字段不要写入Execl



dbc = pymysql.connect(server_name,user_name,user_password,database_name,charset="utf8")#打开一个数据库连接
      cursor = dbc.cursor()#创建游标
      # 以游标执行查询语句
      cursor.execute("SELECT * FROM `"+datatable_name+"` WHERE ISNULL(`"+datatable_name+"`.photo) = 1 "
                     "AND ISNULL(`"+datatable_name+"`.checked_time) = 0")
      # 获取所有字段名,然后修改
      if studentType==0:
            fields = ('学号','编号','考生号','名字','性别','出生日期','所在院系','专业名称','学制')
      else:
            fields = ('考生号', '学号', '姓名', '性别', '身份证号', '专业名称','checked_time','photo')
      all_data = cursor.fetchall()# 所有数据
      
      dbc.close()#关闭数据库连接

      # 写入excel
      import xlwt
      book = xlwt.Workbook()
      sheet = book.add_sheet('sheet1')#创建一个工作表
      
      for col,field in enumerate(fields):   #写入单元格名称
            sheet.write(0,col,field)

      row = 1                     #行从第二行开始写入
      for data in all_data:
            for col,field in enumerate(data):
                sheet.write(row,col,field)
            row += 1
      book.save(filename)
      tk.messagebox.showinfo("提示","已导出到"+filename)

wp231957 发表于 2020-5-20 20:02:49

fields里直接去掉不行吗

悠龠111 发表于 2020-5-20 20:13:25

wp231957 发表于 2020-5-20 20:02
fields里直接去掉不行吗

那只是把单元格标题去掉,字段的值还是有

wp231957 发表于 2020-5-20 20:20:34

悠龠111 发表于 2020-5-20 20:13
那只是把单元格标题去掉,字段的值还是有

SELECT * FROM `"+datatable_name+"` WHERE
这里的*表示全体字段,你可以有选择的获取
页: [1]
查看完整版本: 关于数据写入Execl表格问题