使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中
前言:
目录
1.准备工具:
数据库:oracle 11g,sql server2008
可视化工具:plsql,Microsoft SQL Server Management Studio
综合应用工具:Navicat premium;版本:11.1.*即可
2.解决oracle与Navicat Premium连接出现的问题。
MySQL 与 SQL Server2008都可以和Navicat Premium进行连接,唯独oracle数据库出现问题:
问题如下:
通过网上查询得知:
是oci.dll版本不对,Navicat本地的OCL版本与Oracle服务器不符造成的。
解决如下:
- 打开Navicat Premium工具下的选项:如下图:
- 点击OCI,替换Navicat premium为oracle的OCL:其中具体地址可参考:D:\app\fangzi\product\11.2.0\dbhome_1\bin\oci.dll
- 重新登录后,点击连接oracle数据库,即正常进入;
正文:
使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中
具体步骤:
- 右击数据库,点击“数据传输”。
- 在常规下选择:
左侧:
连接:oracle数据库;
模式:oracle数据库下的相关数据库;(oracle数据库中的模式就是SQL server2008数据库下的小数据库);
数据库对象:就是相关的表名;
右侧:
目标对象数据库:选择SQL数据库;
数据库:就是SQL数据库下属的相关数据库了;
模式:这里我选择dbo,因为与我的SQL server2008是重复的;
- 在高级下把创建表去掉,如果表是大写的,那可以这样;
3.然后点击开始即可.
出现问题:
1. 在 SQL plus 中登录oracle数据库,创建用户,登录不进去。
2. 数据传输显示成功,但数据没过去。 在Navicat premium中的模式下的oracle的数据库中的表数据为空。
3. 数据传输中,忘记把高级选项中的“创建表”给去掉了。
解决方法:
1. 在plsql中创建用户,直接登录成功了。
2. 我登录的用户不是aqTest,那即便我在模式下打开aqtest也是一样数据为空,除非,我登录的用户是aqTest.
3. 去高级选项中把“创建表”给删除。