Khi sử dụng trình điều khiển Unicode của PostgreSQL, bạn cần gọi setencoding
và setdecoding
như đã giải thích tại đây
.
# Python 3.x
cnxn.setdecoding(pyodbc.SQL_CHAR, encoding='utf-8')
cnxn.setdecoding(pyodbc.SQL_WCHAR, encoding='utf-8')
cnxn.setencoding(encoding='utf-8')
Nếu bạn đang sử dụng trình điều khiển "ANSI" của PostgreSQL thì bạn vẫn có thể cần gọi các phương thức đó để đảm bảo rằng bộ ký tự byte đơn chính xác (còn gọi là "trang mã", ví dụ:windows-1252
) được sử dụng cho SQL_CHAR.