2017-01-17 20 views
1

次のコードを使用してtxtファイルを生成しています。コードは問題なく動作しますが、一部の文字に問題があります。私はOracleを使用しています。 éなどの文字は表示できません。Oracle Spoolで特殊文字を表示できません

set echo off 
set verify off 
set termout on 
set heading off 
set pages 50000 
set feedback off 
set newpage none 
set linesize 1000 
set serveroutput off 
set pagesize 0 
set trimout on 
set trimspool on 


spool Weekly_Members_Vendors.txt 

select ''||Unique_ID||''||Name||''||Alt_Name||''|| Entity_Type||''||Party_Type||''||Reference_#||''||Addr1||''||Addr2||''|| 
    Addr3||''||Town||''||County||''||Postcode||''||Country||''||ALT_ADDRESS1||''||ALT_ADDRESS2||''|| 
    ALT_ADDRESS3||''||ALT_TOWN||''||ALT_COUNTY||''||ALT_POST_CODE||''||ALT_COUNTRY||''||NATIONALITY||''|| 
    DOB||''||INDIVIDUAL_ID||''||INDIVIDUAL_ID_TYPE||''||COUNTRY_OF_REGISTRATION||''||COMPANY_ID||''||COMPANY_ID_TYPE||''|| 
    SOURCE_COUNTRY||''||SOURCE_SYSTEM||''||TRANSACTION_TYPE 
from  dbo.Temp_Weekly_Export_File; 



spool off; 

exit 

答えて

2

WindowsでSQL * Plusを実行すると仮定します。この場合

、通常それはCP437かCP850(あなたは、ヨーロッパやアメリカにある場合によっては)あるべきchcp

により、コマンドライン・ウィンドウのコード・ページをご確認ください。

その後、あなたは環境変数(例えばset NLS_LANG=WE8PC850

またはレジストリ内

HKLM\SOFTWARE\Wow6432Node\ORACLE\KEY_%ORACLE_HOME_NAME%\NLS_LANG 32ビットのため、RESP。 HKLM\SOFTWARE\ORACLE\KEY_%ORACLE_HOME_NAME%\NLS_LANG 64ビット用としてのいずれかを起動すると、SQL * Plusに応じて、あなたの NLS_LANG値を設定する前に、 )

また、コマンドラインウィンドウのコードページを変更することもできます。 chcp 1252

はまた、これらの回答を参照してください。

Unicode characters in Windows command line - how?

OdbcConnection returning Chinese Characters as "?"

関連する問題