Python 是否可以使用SqlAlchemy自动解码字符串?
使用SqlAlchemy,我有一些字符串列在 UnicodeEncodeError:“ascii”编解码器无法对356位置的字符u'\xe9'进行编码:序号不在范围内(128) 因为它们不是Unicode 我知道,通过执行_string.decode('cp1252'),它可以工作,但是可以定义一个方法来自动解码从数据库返回的所有字符串吗 有了它,调用my_model.my_字符串将在返回和解码之前被处理Python 是否可以使用SqlAlchemy自动解码字符串?,python,unicode,sqlalchemy,Python,Unicode,Sqlalchemy,使用SqlAlchemy,我有一些字符串列在 UnicodeEncodeError:“ascii”编解码器无法对356位置的字符u'\xe9'进行编码:序号不在范围内(128) 因为它们不是Unicode 我知道,通过执行_string.decode('cp1252'),它可以工作,但是可以定义一个方法来自动解码从数据库返回的所有字符串吗 有了它,调用my_model.my_字符串将在返回和解码之前被处理 我查看了,这似乎正是我要寻找的,但我不知道在哪里告诉SqlAlchemy使用强制EUTF8
我查看了,这似乎正是我要寻找的,但我不知道在哪里告诉SqlAlchemy使用
强制EUTF8
类。您已经找到了解决方案。你在那里建造的是一种新类型。因此,您不必使用列(字符串…
或列(Unicode…
而是使用列(强制字符串…
)为什么烧瓶很重要?为什么不使用您正在使用的DBMS?为什么不让DB-API适配器根据连接字符集对字符串进行解码?您已经找到了解决方案。你在那里建造的是一种新类型。因此,您不必使用Column(String…
或Column(Unicode…
),而是使用Column(强制字符串…
。我想说的是,我尝试在数据库的连接字符串中指定UTF-8字符集,但运气不佳。结果,问题是我的数据库编码不是uft8@Javex,把它作为答案贴出来,我会接受的。谢谢你的评论,伙计们:)