oracle导入sql脚本出现中文乱码
问题描述:用a.sql文件执行insert,不论是通过pl/sql还是sqlplus @文件名都是中文数据出现乱码。
绝大多数情况是环境变量NLS_LANG的值和数据库字符集不一致导致。
如果二者不一致,修改其一使二者一致。
建议修改NLS_LANG,方便、简单、安全
登录Linux,进入oracle用户,编辑/home/oracle/.bash_profile文件
#vi /home/oracle/.bash_profile;
在最后一行添加:
export NLS_LANG="Simplified Chinese_CHINA.AL32UTF8"
AL32UTF8是根据你的oracle数据库字符集填写的。
之后重新编译.bash_profile文件或者重新登录
#source /home/oracle/.bash_profile;(重新编译的方式,执行这段代码)
验证一下吧:#echo $NLS_LANG;
如果是Simplified Chinese_CHINA.AL32UTF8就对了,这时候sqlplus进入oracle,查看中文还是执行带有中文的脚本就都可以啦