[python] MySQLdb a znaková sada - problém
triton29a na atlas.cz
triton29a na atlas.cz
Čtvrtek Říjen 6 20:59:54 CEST 2005
Python 2.4.1, MySQL 4.1, mysql-python 1.2
1) vytvořím tabulku, která obsahuje textové pole s latin2 kódováním
create table adresy (..., mesto varchar(64) character set latin2 collate latin2_czech_cs, ...)
2) vložím záznam
insert into adresy (name) values("Děčín")
3) provedu select
mydb = MySQLdb.connect(host=MYSQL_HOST, user=MYSQL_USER, passwd=MYSQL_PASSWORD, db=MYSQL_DBNAME, read_default_file='/etc/my.cnf')
MyCursor = mydb.cursor()
MyCursor.execute('select mesto from adresy where name like "d%"')
print MyCursor.fetchall()
ale místo očekávaného "Děčín" se vypíše "D\xec\xe8\xedn" :-(
Přitom ten samý select v mysql klientovi vrací výsledek se správnou diakritikou.
Proč se vrací výsledek v unicode escape sekvencích ? Kde dělám chybu ?
Předem díky za odpověď
Další informace o konferenci Python