

python3上のpsycopg2でutf-8の日本語文字列をtypeがtextのカラムにinsertすると文字化けします  
どうすればいいのでしょうか?

databaseのEncodingは`UTF8`になっています

psqlからinsertした場合には文字化けは起こらないのですが、下記のようにpsycopg2でinsertすると文字化けします

[code]

    
    cursor.execute("insert into test_table (utf8_text) value (%(utf8_text)s);", 
    {"utf8_text": "こんにちは"})
    
    
    
[/code]

下記のissueがあるようなのですが、この問題を回避するにはどうすればいいのでしょうか?  
<https://github.com/psycopg/psycopg2/issues/331>

ちなみにPython3.5.2, Postgresql: 9.5.3, psycopg2: 2.6.2です


CC BY-SA 3.0
2016-08-10T13:12:13.130
28183
2016-08-22T20:24:08.383
2016-08-10T13:19:17.617
5246
5246
question
python postgresql
python3のpsycopg2でutf-8の文字列をinsertすると文字化けする


日本語のテキスト前に`u`を入れると回避できるかと思われますがいかがでしょうか。

[code]

    cursor.execute("insert into test_table (utf8_text) value (%(utf8_text)s);", 
    {"utf8_text": u"こんにちは"})
    
[/code]


CC BY-SA 3.0
2016-08-22T16:09:25.823
28433
2016-08-22T20:24:08.383
2016-08-22T20:24:08.383
3068
18556
28183
answer