2016-09-29 6 views
0

私はPython 2.7からOracleデータベースに接続します。 私が使用:Python 2.7とOracleとの接続:ルージング(ポーランド語)

cursor.execute("SELECT column1 FROM table").fetchall()] 

すべてのポーランド語の文字(「ęóąśłżćń」)が1(「eoaslzcn」)をASCIIに変換されますので、私はcolumn1のためのほとんどの適切な値を持っています。 SQLDeveloperのような別のツールを使用し、同じselectステートメントを使用すると、私は適切な価値を得ます。どうもありがとうございました -

+0

ここで、文字は失われていますか? oracle-> python?またはpython->出力環境? –

+0

文字がOracle - > Pythonで失われました。 – KrzyszofS

答えて

0

は、データベース言語の文字列、

os.environ['NLS_LANG'] = 'POLISH_POLAND.EE8MSWIN1250' 
0

@マークハリソンのようなものに、環境変数NLS_LANGを設定してみてください!できます!私が何をしたか、正確な指示があります:

私は言語が何であるかをオラクルでチェック:

SELECT USERENV ('language') FROM DUAL 

応答があった。

POLISH_POLAND.UTF8 

その後、私はPythonでNLS_LA値を変更:

os.environ['NLS_LANG'] = 'POLISH_POLAND.UTF8' 

使用方法

と "> file.txt"はコマンドラインでutf8で(適切な)ファイルを取得しました。