oralce 修改编码
描述:将不同字符集oracle数据导入另一个oracle时,出现中文乱码现象。
一、oracle字符集查询
select userenv(‘language‘) from dual; 查询结果:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
其中NLS_CHARACTERSET 为server端字符集
NLS_LANGUAGE 为 server端字符显示形式
二、查询oracle client端的字符集
$echo $NLS_LANG
如果发现你select 出来的数据是乱码,请把client端的字符集配置成与linux操作系统相同的字符集。如果还是有乱码,则有可能是数据库中的数据存在问题,或者是oracle服务端的配置存在问题。
三、server端字符集修改
更改字符集步骤方法(WE8ISO8859P1 --> ZHS16GBK)
1.开始 - 运行 - 输入cmd 进入命令提示符
输入
sqlplus /nolog
2.以管理员身份登录sqlplus
sql> conn / as sysdba; sql> shutdown immediate; database closed. database dismounted. oracle instance shut down. sql> startup mount; oracle instance started. total system global area 135337420 bytes fixed size 452044 bytes variable size 109051904 bytes database buffers 25165824 bytes redo buffers 667648 bytes database mounted. sql> alter system enable restricted session; system altered. sql> alter system set job_queue_processes=0; system altered. sql> alter system set aq_tm_processes=0; system altered. sql> alter database open; database altered. sql> alter database character set internal_use ZHS16GBK; sql> shutdown immediate; sql> startup;
四、修改pl/sql developer 的编码
在windows中创 建一个名为“NLS_LANG”的系统环境变量,设置其值为“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”,然后重新启动 pl/sql developer,这样检索出来的中文内容就不会是乱码了。如果想转换为UTF8字符集,可以赋予“NLS_LANG”为 “AMERICAN_AMERICA.UTF8”,然后重新启动 pl/sql developer。其它字符集设置同上
相关推荐
liusarazhang 2020-06-28
89411051 2020-06-14
FORYAOSHUYUN 2020-06-11
88540591 2020-06-01
81214051 2020-04-25
84590091 2020-04-22
SDUTACM 2020-02-15
Airuio 2020-01-28
amberom 2019-12-24
typhoonpython 2019-11-19
JakobHu 2019-11-09
80467305 2019-11-04
butterflyfly00 2019-11-04
wklken的笔记 2019-10-27
88384957 2019-10-26
yiyilanmei 2020-08-03
mjshldcsd 2020-06-14
王艺强 2020-06-12
LUOPING0 2020-05-18