import pymysql import decimal import datetime import json import LogPackage import logging import os logs=LogPackage.Logger(filename='log.txt',path=1,driver_path=os.getcwd()) logs.Log() logger=logging.getLogger(__name__) __description__='Finding the data in the same database' class DecimalEncoder(json.JSONEncoder): def default(self,obj): if isinstance(obj,decimal.Decimal):#decimal类型转换,使其可以转换为json格式数据 return float(obj) elif isinstance(obj,datetime.datetime):#datetime类型转换,使其可以转换为json格式数据 return obj.__str__() return super(DecimalEncoder,self).default(obj) class RUNSQL(object): def run_sql(self): db=pymysql.connect(host='服务器地址',port=3306,user='用户名',password='密码',db='数据库名称',charset='utf8') self.cursor1=db.cursor() self.cursor2=db.cursor() self.cursor1.execute('desc osc_order;')#获取字段属性默认值 self.cursor2.execute("SELECT * FROM osc_order WHERE customer_id='47001930' and status_name in('订单已收已付') order by created_at DESC") db.close() def sql_test(self): self.run_sql() index=self.cursor1.fetchall() print(index) result=[] row={} for res in self.cursor2.fetchall(): for i in range(len(index)): row[index[i][0]]=res[i] result.append(row) # print(result) for line in result: print(line) print(json.dumps(result,cls=DecimalEncoder,indent=4,ensure_ascii=False,sort_keys=True))#输出的是字符串 # for data in self.cursor.fetchall(): # print(data) if __name__=='__main__': s=RUNSQL() s.sql_test()
操作mysql,获取字段属性值,并输出表数据
猜你喜欢
转载自blog.csdn.net/lssrain/article/details/80491512
今日推荐
周排行