PYODBC truncates the response of a SQL Server FOR JSON query

后端 未结 2 1575
失恋的感觉
失恋的感觉 2021-01-19 07:59

I\'m having issues trying to get a SQL Server JSON result set to play nicely with PYODBC. My Python/Flask skills aren\'t the best, so I\'m not entirely sure if this is somet

2条回答
  •  -上瘾入骨i
    2021-01-19 08:32

    Thanks to a combination of the comments above, I have managed to get this working.

    In case anyone else comes across my issue, I'll summarise:

    1. As per @GordThompson's comment, I changed the driver from the old SQL Server to ODBC Driver 13 for SQL Server. There were a couple of tweaks needed in my parameter passing once I had upgraded the driver version, but on the whole this seemed like a wise move

    2. Perhaps more importantly, @FlipperPA's comment suggested I CAST the JSON Object in the SQL Server query to a VARCHAR(MAX).

      SELECT CAST( (SELECT ..... FOR JSON PATH) AS VARCHAR(MAX))

      This returned the full JSON object that was being selected and everything is now working correctly.

    I can only assume there is some issue with pyodbc supporting JSON in SQL Server 2017/Azure?

提交回复
热议问题