使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中

前言:

目录

前言:

1.准备工具:

2.解决oracle与Navicat Premium连接出现的问题。

正文:

使用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数据库出现问题:

问题如下:

  1. 使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中
  2. 使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中

通过网上查询得知:

是oci.dll版本不对,Navicat本地的OCL版本与Oracle服务器不符造成的。

解决如下:

  1. 打开Navicat Premium工具下的选项:如下图:

使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中

  1. 点击OCI,替换Navicat premium为oracle的OCL:其中具体地址可参考:D:\app\fangzi\product\11.2.0\dbhome_1\bin\oci.dll

使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中

  1. 重新登录后,点击连接oracle数据库,即正常进入;

正文:

使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中

具体步骤:

  1. 右击数据库,点击“数据传输”。

使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中

  1. 在常规下选择:

左侧:

连接:oracle数据库;

模式:oracle数据库下的相关数据库;(oracle数据库中的模式就是SQL server2008数据库下的小数据库);

数据库对象:就是相关的表名;

右侧:

目标对象数据库:选择SQL数据库;

数据库:就是SQL数据库下属的相关数据库了;

模式:这里我选择dbo,因为与我的SQL server2008是重复的;

使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中

  1. 在高级下把创建表去掉,如果表是大写的,那可以这样;

使用Navicat premium导出oracle数据库中数据到SQL server2008数据库中

3.然后点击开始即可.

出现问题:

1. 在 SQL plus 中登录oracle数据库,创建用户,登录不进去。

2. 数据传输显示成功,但数据没过去。 在Navicat premium中的模式下的oracle的数据库中的表数据为空。

3. 数据传输中,忘记把高级选项中的“创建表”给去掉了。

解决方法:

1. 在plsql中创建用户,直接登录成功了。

2. 我登录的用户不是aqTest,那即便我在模式下打开aqtest也是一样数据为空,除非,我登录的用户是aqTest.

3. 去高级选项中把“创建表”给删除。