`

oracle字符集修改 中文乱码

阅读更多
sqlplus / as sysdba;//操作系统用户认证模式
sqlplus sys/admin as sysdba;//非操作系统用户认证模式

1、查询oracle服务端字符集

select t.PARAMETER
  ,t.VALUE
  from nls_database_parameters t
where t.PARAMETER in ('NLS_LANGUAGE', 'NLS_CHARACTERSET');

select userenv('language') from dual;

2、修改oracle服务端字符集

shutdown immediate;

startup mount;

alter system enable restricted session;

--alter system set JOB_QUEUE_PROCESSES=0;

--alter system set AQ_TM_PROCESSES=0;

alter database open;

alter database character set internal_use AL32UTF8;

shutdown immediate;

startup;

3、修改oracle客户端字符集
   set NLS_LANG=AMERICAN_AMERICA.AL32UTF8(注:没有生效时,请在系统属性中设置,确保生效)

4、导入
   @ C:\Users\Administrator\Desktop\func.sql;



注:导入注释出现乱码时,
通过select USERENV('LANGUAGE') from dual查询出源数据库的字符集。
通过set NLS_LANGS查询出源数据库机器的NLS_LANG
例如:USERENV('LANGUAGE')=AMERICAN_AMERICA.ZHS16GBK
     NLS_LANGS=AMERICAN_AMERICA.ZHS16GBK

然后,
1. export NLS_LANG= AMERICAN_AMERICA.ZHS16GBK(linux)
   set NLS_LANG= AMERICAN_AMERICA.ZHS16GBK(windows)

2. 登录: sqlplu 用户名/密码@数据库

3. 执行@文件名

sql>@ c:\test.sql;
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics