我有一个Python程序,使用ODBC连接连接到MSSQL数据库。我使用的Python库是pypyodbc。
这是我的配置:
- Windows 8.1 x64
- SQL Server 2014 x64
- Python 2.7.9150
- PyPyODBC 1.3.3
- ODBC驱动程序:SQL Server Native Client 11.0
我遇到的问题是,当我查询一个带有varchar(max)列的表时,内容被截断了。
我对pypyodbc还很陌生,我一直在搜索解决办法,但没有找到任何关于如何防止这种情况发生的方法,即使使用搜索词我也找不到。我甚至尝试在我的SQL查询中添加SET TEXTSIZE 2147483647;
,但数据仍然被截断。
我该如何防止这种情况发生?或者你能指导我吗?
更新:
因此,我尝试在我的SQL查询中执行转换。当我使用CAST(my_column as VARCHAR(MAX))
时,它在相同的位置截断。但是,如果我使用CAST(my_column as VARCHAR(8000))
,它会给我更多的文本内容,但仍然截断了一些内容。如果我尝试使用大于8000
的数字,我会收到错误消息,指出8000
是可以使用的最大值。有人知道这里可能发生了什么吗?看起来使用MAX
不起作用。