latin_1文字セットを使用するSQLServerデータベースから、utf-8文字セットを使用するGreenplum/postgresデータベースにデータを抽出する作業を行っています。挿入の直前に文字列値を変換しようとしていますが、これを行うと:
row=[i.decode('latin_1') for i in row]
row=[i.encode('utf-8') for i in row]
デコードがint型のメンバーではないというエラーが表示されます。整数値が入ってくるという点でそれは理にかなっています。しかし、文字列もあります。私が読んだこの種の他の投稿では、答えは常に即座にそしてはっきりと「あなたは常にどのタイプがやってくるのかを知っているべきです」でした。多くの点で静的クエリなので、私はそうしますが、私が書くすべてのクエリの変換を実行したいiの値のセットを定義することは、ひどく扱いにくく、正直に保守できないようです。タイプテストは、ここではクリーンでカプセル化可能で再利用可能な答えのように思われますね。
助言がありますか?