pyodbc utf-8

Hans Mulder hansmu at xs4all.nl
Fri Dec 7 13:16:09 CET 2012


On 7/12/12 08:41:27, Markus Christen wrote:
> good morning
> 
> i am using pyodbc 3.0.6 for win32 python 2.7.3
> i used it to connect with a MsSql db. Now i have a little problem with the umlaut.
> i cant change anything in the db and there are umlauts like "ä", "ö"
and "ü" saved.
> so i have to change my view (of django 1.4.1) to change \xfc into ü etc. but how i
> have to do this?

> on my webpage the umlauts are correct (without helping fonts like ü (ü)).
> but not the umlauts out read out of my db.

Which encoding does your webpage use?

> Here the code i'm using:
> ---------------------------------
>     conn = pyodbc.connect('DRIVER={SQL Server};CHARSET=UTF8;SERVER=MAURITIUS;DATABASE=baan5c;UID=portal;PWD=P0rtalReader')
>     cursor = conn.cursor()
>     cursor.execute("SELECT t_nama, t_bpid FROM ttccom100070 ORDER BY t_nama")
>     rows = cursor.fetchall()
> ---------------------------------
>
> helping tags like ", 'utf-8'" or something else didnt work till now.
> have anyone an idea how i can fix this problem? ^^

I think the way forward would be to look at the data your code snippet
receives from the database.

Which datatype do the strings have?  Unicode or str or something else?

If the type is str, which encoding do they use?
If this isn't documented, you could at a few strings containing
non-ascii characters to see what codes are used, and compare
them to popular encodings such as uft8, latin1 and cp1252.


Hope his helps,

-- HansM





More information about the Python-list mailing list