【发布时间】:2018-03-11 11:27:21
【问题描述】:
我的 python 应用程序通过 pyodbc 调用 MSSQL 2017 函数,函数查询响应在服务器端采用 JSON 格式。
cursor.execute("SELECT dbo.fnInvoiceJSON(%s,%s);" % (posted,vat))
row = cursor.fetchone()
在应用程序中返回的响应应该是 class 'pyodbc.Row。
如果我将其转换为字符串,我可以通过 requests.post 将此响应传递给其他 API 调用。
有没有办法将此响应转换为可访问的 python dict / JSON 对象?
【问题讨论】:
-
如果
fetchone()返回一个包含单列的行对象,那么您可以改用fetchval()。详情here. -
感谢@Gord Thompson。
fetchval()解决了这个问题。现在返回对象是字符串,从那里我可以将它转换为 dict 'json.loads(row)' 等等。
标签: json sql-server python-3.x pyodbc