2017-10-17 21 views
0

私はいつも?を取得するOracleデータベースから特殊文字を照会するときに、WindowsからLinuxにPHPサーバーアプリケーションを変更しています。 Windowsサーバ上で、私はこのクエリアクセントOracle - 特殊文字

SQL> select length ('ñ') from dual; 

LENGTH ('Ñ') 
----------- 
           1 

作るとLinuxで、それはこの

SQL> select length ('ñ') from dual; 

LENGTH ('??') 
------------ 
            2 
+0

SQL> nls_database_parametersからの値の選択ここで、parameter = 'NLS_CHARACTERSET'; 値 ---------------------------------------- WE8ISO8859P1 SQL> v $ nls_parametersから値を選択します。ここで、parameter = 'NLS_CHARACTERSET'; 値 ---------------------------------------------- ------------------ WE8ISO8859P1 –

+0

コメントを追加する代わりに、追加情報をご質問ください。 –

答えて

0

を生成し、あなたのLinuxの文字セットに応じて、あなたのNLS_LANG変数を設定する必要があります。

チェック文字はlocale charmapで設定または$LANG エコーその後、例えば、それに応じてNLS_LANGを設定export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

詳細は OdbcConnection returning Chinese Characters as "?"を参照してください。