UTF8代码序列无效

2024-09-26 18:13:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着用NuoDB数据库做一个简单的连接-

import pynuodb
connection = pynuodb.connect("DB", "servername", "adminaccount", "password", options={'schema': 'schemaname'})
cursor = connection.cursor()
thedata = open('file.pdf', 'rb').read()
sql = "update table set column = (?) where id = 1"
cursor.execute(sql, (thedata,))

在尝试加载时会产生以下错误-

^{pr2}$

更新-我尝试过同时使用BLOB或二进制文件,两者都会产生相同的错误。有关数据类型的文档可在此处找到-

http://doc.nuodb.com/display/doc/Binary+Data+Types


Tags: import数据库dbsqldocconnect错误password
1条回答
网友
1楼 · 发布于 2024-09-26 18:13:31

pynuodb库为您提供了一种特殊类型来封装二进制数据,pynuodb.Binary();在该对象中包装二进制数据,以确保正确处理:

thedata = pynuodb.Binary(open('file.pdf', 'rb').read())
sql = "update table set column = (?) where id = 1"
cursor.execute(sql, (thedata,))

如果没有这个包装器,驱动程序会尝试将数据作为文本发送到服务器,而文本必须是UTF-8编码的。在

相关问题 更多 >

    热门问题