关于plsql导入pde因为字符集设置问题报错,而研究oracle服务器字符集、客户端字符集过程中发现的问题看,以及亲测的解决办法

来源:互联网 发布:降噪软件 编辑:程序博客网 时间:2024/04/24 07:27

关于plsql导入pde因为字符集设置问题报错,而研究oracle服务器字符集、客户端字符集过程中发现的问题看,以及亲测的解决办法。

---

背景交代:

plsql版本:11.0.5.1175 01.601769-Unlimited user license

oracle客户端版本:oracle client 11gr2

oracle服务器端版本:oracle 11g

通过select userenv('language') from dual查出服务器端的字符集是:


通过select * from nls_database_parameters查出服务器端的字符集是:


数据库服务器端有一个实例orcl,有一个用户test1/test1,内有数据20M。同一实例下有一个用户test2/test2,内容为空,什么都没有。拟将test1中的内容导出pde恢复到test2中供测试使用。

--背景交代完毕

下面是测试情况:


情况1:

客户端设置字符集为 SIMPLIFIED CHINESE_CHINA.AL32UTF8,使用plsql导出test1用户的pde命名为test1.pde,没问题,正常导出,没有报错。使用同一plsql和oracle客户端,导入test1.pde到test2用户下报错。


情况2:客户端设置字符集为

 SIMPLIFIED CHINESE_CHINA.ZHS16GBK,使用plsql导出test1用户的pde命名为test1.pde,没问题,正常导出,没有报错。使用同一plsql和oracle客户端,导入test1.pde到test2用户下正常,没有报错。

这就奇怪了:

客户端字符集和服务器端字符集设置为一致,导出失败

客户端字符集和服务器端字符集设置为不一致,却导入成功了。


什么原因呢?



阅读全文
0 0
原创粉丝点击