gpt4 book ai didi

python - SQL Server pyodbc 大文本插入问题

转载 作者:行者123 更新时间:2023-12-05 03:01:24 24 4
gpt4 key购买 nike

我有一个大字符串文本要插入到 SQL Server 2014 Express (v12.0.2000) 的列中。最初,我将字段定义为 text 类型,数据毫无问题地插入到表中。后来我发现 text 数据类型已被弃用,不应使用。将数据类型转换为 varchar(max) 在 pyodbc 中引发了一个奇怪的问题。当相同的数据插入到 varchar(max) 列时,它会抛出错误并显示以下消息:

[HY000] [Microsoft][ODBC SQL Server Driver]Warning: Partial insert/update. The insert/update of a text or image column(s) did not succeed. (0) (SQLPutData)

但是相同的插入在 text 列上工作正常。

我正在使用带有 Windows 身份验证的 {SQL Server} 驱动程序,当我将其更改为 {SQL Server Native Client 11.0} 时,它的身份验证开始失败,所以我将其切换回 {SQL Server},因为它正在处理 text 数据类型。

我查看了一些关于类似问题的讨论,但找不到有助于调试问题的案例。

我检查了插入数据成功和失败的字符串的大小:

  • TEXT: 所有数据插入成功。
  • VARCHAR(MAX):插入长度为 98566 但长度为 326235 的字符串失败。

任何指导甚至调试技巧都将受到高度赞赏。提前致谢。

最佳答案

“警告:部分插入/更新”。错误与

有关
  • 古老的DRIVER=SQL Server ODBC驱动程序(SQLSRV32.DLL),
  • [n]varchar(max) 列,和
  • 长度超过 204800 个字符的字符串。

它不会出现在较新的驱动程序中,例如 DRIVER=ODBC Driver 11 for SQL ServerDRIVER=ODBC Driver 17 for SQL Server

你应该更新你的驱动程序然后ask a new question如果身份验证错误仍然存​​在并且您需要帮助。

关于python - SQL Server pyodbc 大文本插入问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55790674/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com