ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

python 数据库结果转模型(2)

2020-07-10 17:05:20  阅读:267  来源: 互联网

标签:cur 模型 python 数据库 self price id data class


1、定义一个类,模拟模型数据,这里用金额(decimal)、和时间(datetime)两个字段举例 CURRENT_TIMESTAMP ***MySQL默认系统时间

class tModel():
    def __init__(self,id,price,createtime):
        self.id = id
        self.price = price
        self.createtime = createtime

2、数据库请求返数据转换为模型,json 转class时对应时间 和金额特殊类型 不需要做特殊处理,class转json时统一处理

class tsql(SqlLink):
    def selectdata(self):
        re_data = []
        conn, cur = self.ConnOpen()
        try:
            sql = "SELECT * FROM `t_2`"
            cur.execute(sql)
            data = cur.fetchall() # 多条数据 tuple 元组类型 ()  data = list(data) 转列表
            # *****转换模型****
            for item in list(data):
                m = tModel(item["id"],item["price"],item["createtime"])
                re_data.append(m)
            # *****END****
            return re_data
        except Exception as e:
            conn.rollback()   # 回滚事务 语句执行失败 回滚
            # 此处加日志
            raise e.args
        finally:
            self.ConClose(conn, cur)

3、return返回结果 class 类型

[<__main__.tModel object at 0x0000024CABFEB5F8>,
<__main__.tModel object at 0x0000024CABFEB780>,
<__main__.tModel object at 0x0000024CABFEB7B8>,
<__main__.tModel object at 0x0000024CABFEB7F0>,
<__main__.tModel object at 0x0000024CABFEB828>,
<__main__.tModel object at 0x0000024CABFEB860>]

 

标签:cur,模型,python,数据库,self,price,id,data,class
来源: https://www.cnblogs.com/clearheart/p/13280100.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有