oracle字符集的问题

情况:公司的测试服务器数据库不小心被开发人员给搞崩溃了,需要把数据库清空,将运行环境的数据库附加过来,但是当我将导出的dump文件导入的时候,却出现了乱码问题,后来经过多次试验。终于把问题给弄明白了。

       数据库附加失败原因:

       1、版本不一致,低版本的oracle无法附加高版本的oracle文件

       2、oracle的字符集不一致,使用:select * from nls_database_parameters;查询就可以知道了

第一种情况相信不用说大家都知道怎么解决,后者的话解决方法如下:

执行完sql语句后,在查询结果中可以看到以下两项,如果这两项的跟导出的oracle环境下的不同,那么导入肯定会出现乱码。

NLS_CHARACTERSET是数据库字符集,NLS_NCHAR_CHARACTERSET是国家字符集
ORACLE中有两大类字符型数据,VARCHAR2是按照数据库字符集来存储数据。而NVARCHAR2是按照国家字符集存储数据的。同样,CHAR和NCHAR也一样,一是数据库字符符,一是国家字符集。
出现这种情况,修改字符集编码就可以了(ALTER DATABASE CHARACTER SET XXXXXX

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值