MicrosoftSQLServerにデータを書き込むアプリケーションがあります。データベースの文字セットはCP1252であり、保存される受信データはUTF-8です。データにはCP1252に変換できない文字が含まれている可能性があり、挿入すると例外がスローされます。
データベース担当者は、次のように、データをCP1252に強制的にクランチする必要があると言いました。
some_value = some_value.encode('CP1252', 'replace')
しかし、SQLAlchemyは自動的に変換を行い、変換を強制する方法がわかりません。
engine = sqlalchemy.create_engine('mssql+pyodbc://...'
encoding='CP1252',
convert_unicode=True,
)
一部の文字が欠落している場合でも、データを保存することが重要です。どうすればこれを実装できますか?この場合、私は多くのデータベースリフレクションを使用していることに注意してください。