Python MySQLdb在查询时,如果是datetime类型,在json序列化的时候会出现问题。
接收时发现时间格式前面有个b,导致json序列化失败。
[{ 'id': 1, 'documentName': 'test', 'createTime': b '2021-07-14 13:13:24' }, { 'id': 4, 'documentName': '哈弗H6', 'createTime': b '2021-10-18 13:40:44' }, { 'id': 47, 'documentName': 'tumo_pms20211018.docx', 'createTime': b '2021-10-18 17:30:07' }]
解决思路:
想了一下,觉得不如从MySQL下手,让MySQL返回string的数据类型。在SQL引擎下做数据处理,肯定比自己for处理要效率的多。
MySQL做数据类型转换的函数是CAST。于是将SQL语句变成:
SELECt id,documentName,CAST(createTime AS CHAR) AS createTime FROM `documents`
Python接收
{ "data": [ { "createTime": "2021-07-14 13:13:24", "documentName": "test", "id": 1 }, { "createTime": "2021-10-18 13:40:44", "documentName": "u54c8u5f17H6", "id": 4 }, { "createTime": "2021-10-18 17:30:07", "documentName": "tumo_pms20211018.docx", "id": 47 } ], "status": "success" }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)