当前位置:Gxlcms > 数据库问题 > python查询数据库保存为csv

python查询数据库保存为csv

时间:2021-07-01 10:21:17 帮助过:69人阅读

coding: utf-8 import pymssql import csv import datetime from file2zip import * # from send_email import * import plugs.FileHelper as fileHelper from file2zip import FileToZip #类名 from send_email import SendMail #类名 class TestCSVInfo(fileHelper.BaseCheck, SendMail,FileToZip): report = ‘‘ def __init__(self, month): SendMail.__init__(self, month) def get_sel_excel(self): print(" 开始链接数据库!") # 建立连接 conn = pymssql.connect( host=localhost, port=1433, user=test, password=test, database=Test, charset=utf8 ) dateFrom = 2020-04-01 0:00:00 dateTo = 2020-04-30 23:59:59 today = datetime.datetime.now().strftime(%Y-%m-%d) try: print(os.path.exists(month)) if os.path.exists(month) == False: os.makedirs(month) # 建立游标 cursor = conn.cursor() # <editor-fold desc="查询语句"> titile = today + _ + 商品 header = [订单号, 金额, 日期] print("开始查询表!") # 执行sql语句 _sql = self.getsql("test.sql") Sql = _sql.replace(v_from, str(dateFrom)).replace(v_to, str(dateTo)) print(titile + ——数据库查询中。。。) cursor.execute(Sql) # 获取查询到结果 res = cursor.fetchall() self.w_excel(res, header, titile) # </editor-fold> cursor.close() conn.close() #压缩为zip self.addZip(month) # 发送邮件 self.SendMethod(month) except Exception as e: print("报错{}".format(e)) cursor.close() conn.close() # 操作csv def w_excel(self, res, header, titile): with open(f{month}/ + titile + .csv, w, newline=‘‘, encoding=utf-8-sig) as csvfile: writer = csv.writer(csvfile) # 写表头 writer.writerow(header) # 写入数据 for row in range(0, len(res)): writer.writerow(list(res[row])) print(titile + f"导出成功!,共有条数:{len(res)}") print(titile + "结束-------------------------------------------------------------------------") if __name__ == "__main__": _today = datetime.date.today() _first = _today.replace(day=1) last_month = _first - datetime.timedelta(days=1) month = last_month.strftime(%Y-%m) #获取上个月月份 # month = datetime.datetime.now().strftime(‘%Y-%m‘) #获取当前月份 TestCSVInfo(month).get_sel_excel()

 

python查询数据库保存为csv

标签:sendmail   list   replace   导出   let   style   订单   esc   订单号   

人气教程排行