情景介绍:
在某公司开发一个子系统,给了一个数据库(数据库版本为9i),给了个可以连接数据库的远程桌面地址,远程主机用的plsql版本为7.x;
我的机器上oracle是11g,plsql版本为10.x。
开始了:
1、我直接用10.x的plsql导出了pde文件,但是导入失败,总是报错。错误详情当时没截图,这里不写了。
2、我用10.x的plsql导出了sql文件,但是在7.x的plsql上执行也是报错。
3、本来想导出USEROBJECT的,但是考虑到表空间的问题,没有进行此方法。
4、最后,我又找了个跟远程主机上版本一模一样的plsql安装后,又导出了一份sql文件,这次导入成功了。而且,我的本地数据库字符集为AL32UTF-8,远程主机的
数据库编码为ZHS16GBK,编码格式不同,依然成功导入。
总结:
可以猜测plsql版本是向下兼容的,高版本的文件低版本的读取不了。但是如果是数据量较大,sql文件是一行一行执行的,效率比较低。这里做下记录,以后可以实验下pde文件的导入。
一些命令:
1、查询数据库字符集:select * from nls_database_parameters;里面的NLS_CHARACTERSET可以看到数据库的字符集格式。