LINUX和pl/sql development上ORACLE显示乱码问题

一:WINDOWS下的客户端pl/sql developer连接

 1:查看数据库字符集设置



 2:安装好ORACLE软件或者直接使用ORACLE客户端,设置好监听和pl/sql developer.


也就是在环境变量中增加这行即可:NLS_LANG         SIMPLIFIED CHINESE_CHINA.ZHS16GBK


二:LINUX下的SQLPLUS客户端连接

    1:查看数据库字符集设置

    2:设置环境变量,ORACLE用户登录

        $ vim .bash_profile    --添加如下行即可

         export NLS_LANG="Simplified Chinese_china".AL32UTF8

        尝试过使用添加如下,依然乱码解决不了问题

        export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"

  正确配置如下:

    [oracle@mlyds mobileall]$ rpm -qa |grep fonts-chinese
    [oracle@mlyds mobileall]$ echo LANG
    en_US.UTF-8

    [oracle@mlyds mobileall~]$ cat .bash_profile 
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
 . ~/.bashrc
fi

# User specific environment and startup programs
PATH=$PATH:$HOME/bin

export PATH
export ORACLE_BASE=/u01/oracle
export ORACLE_SID=test

export NLS_LANG="Simplified Chinese_china".AL32UTF8
#export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
export ORACLE_HOME=$ORACLE_BASE/product/10g
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib 


三:验证以及使用unix2doc进行换行符转换:

[oracle@mlyds mobileall]$ sqlplus wonder

SQL*Plus: Release 11.2.0.1.0 Production on 星期三 5月 23 18:07:08 2012

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

输入口令: 

如果此时使用SPOOL导出TXT数据,可以使用unix2doc filename  进行换行符转换,使其传到window下后方面查看

SQL>@/tmp/aa.sql

aa.sql
set heading off
set echo off
set term off
set termout off
set termsout off
set newpage none
set linesize 11
set pagesize 0

set feed off
spool /tmp/mobileall/mp3/北京一次.txt

select distinct(mobile) from qunfa_mtx_test t where t.provincename='北京' and vst=1  and url_class='mp3';
spool /tmp/mobileall/mp3/北京二次.txt

select distinct(mobile) from qunfa_mtx_test t where t.provincename='北京' and vst=2  and url_class='mp3';
spool off


上述步骤经过验证



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章