【问题标题】:byte string too long error in Python using pypyodbc 1.3.4使用pypyodbc 1.3.4的Python中的字节字符串太长错误
【发布时间】:2026-02-07 09:05:01
【问题描述】:
Getting byte string too long 在 Unix 环境中使用 pypyodbc 1.3.4 和 Python Anaconda 3.5 保存超过 127 个字符时出错。
通过此链接Byte string too long PyPyOdbc 并按照说明应用修复程序,但问题仍然存在。
我正在尝试保存超过 127 个字符。数据库是 MS Sql Server。列类型是 varchar MAX 或 nvarchar MAX(我都试过了)。
保存 127 个或少于 127 个字符即可。
谢谢
【问题讨论】:
标签:
python
python-3.x
openshift
【解决方案1】:
我在 MS SQL 和 pypyodbc 1.3.4 上遇到了与 NVARCHAR(MAX) 相同的问题:
cursor.execute("insert into mytable (my_nvarchar_max_column) values (?)", "some long text here......")
因“字节字符串太长”错误而失败。
将字符串作为字节数组传递是可行的:
cursor.execute("insert into mytable (my_nvarchar_max_column) values (?)",
"some long text here......".encode('utf8'))