我需要使用SQLAlchemy創建並連接到數據庫PostgreSQL 9.2。到目前爲止,我可以用UTF-8創建完整的數據庫,但是我無法將非ASCII字符放入其中。這就是我如何連接到數據庫:SQLAlchemy with PostgreSQL Unicode問題
url = URL(drivername=s'postgresql', username='uname', password='pwd', host='localhost', port='5432', database='postgres')
self.engine = create_engine(url)
然後,我創建了新的數據庫,切換到它,並開始填充它:一切正常。我得到這個:
entercursor.execute(statement, parameters)
sqlalchemy.exc.DataError: (DataError) invalid byte sequence for encoding "UTF8": 0xec2d43
'INSERT INTO province (codice_regione, codice, tc_provincia_id, nome, sigla) VALUES (%(codice_regione)s, %(codice)s, %(tc_provincia_id)s, %(nome)s, %(sigla)s) RETURNING province.id' {'nome': 'Forl\xec-Cesena', 'codice': 40, 'codice_regione': 8, 'tc_provincia_id': 34, 'sigla': 'FC'}
我有相同的代碼爲MySQL 5上的同一個數據庫,它的工作原理完美。我不知道什麼是錯的。我註冊了unicode的postgres的擴展名,但這不起作用。我感到困惑,我需要更有經驗的人的幫助。
謝謝我解決了 – arpho