【转载】Oracle安装成功后,修改字符集
看了网上的文章,乱码有以下几种可能
1. 操作系统的字符集
2.oracle server的字符集
3.客户端的字符集
1. 查看oracle的字符集
??
select userenv('language') from dual
2.在Ubuntu中.bashrc 中加入下边的话:
?? export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK(改掉操作系统的字符集)
Oracle? NLS_LANG Oracle
3.
ORACLE instance started.Total System Global Area 76619308 bytesFixed Size 454188 bytesVariable Size 58720256 bytesDatabase Buffers 16777216 bytesRedo Buffers 667648 bytesDatabase mounted.
SQL> ALTER SESSION SET SQL_TRACE=TRUE;
Session altered.
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;
设置字符集
SQL> ALTER DATABASE CHARACTER SET ZHS16GBK;
先把数据库中的有中文乱码的清空了。
然后在执行。这是有可能报错
执行这个ALTER DATABASE character set INTERNAL_USE ZHS16GBK
跳过字符集检查
关闭数据库
SQL> Shutdown immediate;
重启
SQL> startup;
做完之后在sqlplus里边试一下,应该就好了,但是在pl/sql里边一看还是乱码,
最后,在pl/sql里边创建个表,然后在插入中文,查看一下,应该是对的。
这样就解决了乱码问题。 中间还有许多的问题,自己在慢慢研究吧。