我有一个在sql developer(encoding = UTF8)中修改的plsql脚本。我使用Filezilla(transfert binary)将我的脚本放在服务器上。在服务器上,NLS_LANG是AMERICAN_FRANCE.WE8ISO8859P1。
在我的剧本中,我补充道:
ALTER SESSION SET NLS_LANG=FRENCH_FRANCE.UTF8;
我在sql plus会话中编写脚本:字符显示不正确。
我怎样才能让它发挥作用?
谢谢
在启动sql文件的putty会话中,我写了这个:
$ORACLE_HOME/bin/sqlplus id/psw@$ORACLE_SID @$P_SQL/myfile.sql
在文件中,显示如下:
center 'à è é ê ô à ë î ï ù' skip 1 -
在线轴内。
答案 0 :(得分:0)
尝试将NLS_LANG设置为AMERICAN_AMERICA.US8PC437。
在这里看到我的回答类似的问题:
when-insert-persian-character-in-oracle-db-i-see-the-question-mark
答案 1 :(得分:0)
首先,putty的设置Windos / Translation / Remote_character_set和环境变量 LC_CTYPE 应匹配,例如: ISO-8859-1 和 fr_FR.ISO8859- 1 ;或 UTF-8 和 fr_FR.UTF-8
注意:LC_CTYPE可以远程设置(putty:Connection / Data / Environment_variables),如果/ etc / ssh / sshd_config允许if(AcceptEnv)
如果您的AIX支持所选的字符集,请查看 locale -a
如果/当每个角色都在ksh / bash / mc / etc中工作时,您可以尝试使用Oracle:将NLS_LANG设置为 american_america.WE8ISO8859P1 或 american_america.AL32UTF8 (与LC_CTYPE和翻译同步)
PS:我认为你应该在启动任何Oracle程序之前设置NLS_LANG,ALTER SESSION不会改变字符集。