2012-02-28 69 views
0

您好我正在用sqlalchemy和mysql 5.1.58-1ubuntu1开发一个应用程序,我可以从db中获取数据没有问题,除了我不能读取不像asèi字符,如è,ò或欧元符号,而不是欧元我得到
\ u20ac
这是我如何为mysqlalchemysqlalchemy unicode问题

dbfile="root:########@localhost/parafarmacie" 
engine = create_engine("mysql+mysqldb://"+dbfile+"?charset=utf8&use_unicode=0") 

我的所有列处理文本的声明为Unicode的发动机,我用Google搜索了天,但没有任何的运气,有人可以告诉我我的错误在哪里? 由于事先

回答

2

当你从数据库中获取你的Unicode对象,你输出之前,你需要对其进行编码:

my_unicode_object.encode("utf-8") 

你现在看到的是Unicode对象的原始再版这向您显示代码点(因为它尚未转换为字节):-)

+0

'\ u20ac'实际上是欧元符号的Unicode代码点。你的数据库逻辑显然很好。 – wberry 2012-02-28 23:50:26