PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

PostgreSQL ANSI, Python SQL, utf-8'-Codec kann Byte 0xa0 nicht decodieren

Wenn Sie den Unicode-Treiber von PostgreSQL verwenden, müssen Sie setencoding aufrufen und setdecoding wie hier erklärt .

# Python 3.x
cnxn.setdecoding(pyodbc.SQL_CHAR, encoding='utf-8')
cnxn.setdecoding(pyodbc.SQL_WCHAR, encoding='utf-8')
cnxn.setencoding(encoding='utf-8')

Wenn Sie den "ANSI"-Treiber von PostgreSQL verwenden, müssen Sie diese Methoden möglicherweise trotzdem aufrufen, um sicherzustellen, dass der richtige Einzelbyte-Zeichensatz (auch bekannt als "Codepage", z. B. windows-1252 ) wird für SQL_CHAR verwendet.