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.
但是如果不一致的话,会将数据库中的数据转换成操作系统的字符集,返回给用户。插入时一样,就会将数据先做个转换,然后在插入到数据库。
网上的人是这么说的,但具体的我也没试。我有时间试一下,看是不是他所说的那样。
4.修改Oracle的编码和操作系统的一样。(参考别人的)
登陆用dba
SQL> conn sys/sys as sysdba;
停掉数据库
SQL>shutdown immediate;
启动数据库到mount状态下
SQL> STARTUP MOUNT;
- ORACLE instance started.
- Total System Global Area 76619308 bytes
- Fixed Size 454188 bytes
- Variable Size 58720256 bytes
- Database Buffers 16777216 bytes
- Redo Buffers 667648 bytes
- Database 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里边创建个表,然后在插入中文,查看一下,应该是对的。
这样就解决了乱码问题。 中间还有许多的问题,自己在慢慢研究吧。
============================================================
阅读更多- oracle安装成功后更改字符集
- oracle安装成功后,更改字符集
- 数据连接不成功,请检查该数据库是否已启动尝试加载oracle客户端时引发BadImageFormatException.如果在安装32位Oracle客户端组
- Oracle虚拟机VirtualBox安装成功后的注意事项
- 如何才能成功安装ORACLE
- 成功在WIN2003上安装oracle8.1.7(转)
- oracle 11g R2 database安装中出现问题后完全卸载后正常安装成功方法
- 64 位Linux成功安装ORACLE之首篇--感想
- 成功安装 Oracle 10g(x86_64) 到 Fedora 7
- oracle 10.2.0.4安装 创建数据库时 em不成功需要大的补丁
- java+oracle+web(第二天) win7 64位 oracle 11g + pl/sql 32位 的成功安装
- windows下测试oracle安装是否成功
- [转]oracle更改数据库字符集编码
- oracle9204更改字符集步骤方法
- ubuntu oracle 成功安装过程
- (最新成功)免安装Oracle运行pl/sql developer
- Oracle虚拟机VirtualBox安装成功后的注意事项
- oracle 10g安装成功后,scott用户被锁定问题
- oracle 更改字符集
- 转载:用oralce连接.net客户端出现问题:“数据连接不成功,请检查该数据库是否已启动尝试加载oracle客户端时引发BadImageFormatException.如果在安装32位Oracle客户端组件的情况下以64位模式运行,”的解