SQL SERVER数据迁移到ORACLE

来源:互联网 发布:mind bridge淘宝官网 编辑:程序博客网 时间:2024/04/30 02:15

问题描述

将sqlserver中的某个表的数据迁移到oracle中,表中数据量不少。不是对整个库进行迁移。

解决方法

在网上搜了一些方法,下面将成功实现的方法做记录。

1、将数据从SQL SERVER中的数据导出到文本文件;
2、在oracle中创建对应的表,通过sqlldr将文本文件导入到oracle中。

SQL SERVER导出数据

打开“导入和导出数据”,下面是几个关键步骤。

这里写图片描述

服务器名称输入数据库机器ip,输入用户名和密码后点击刷新,连接成功后可选择数据库,然后点击下一步。

这里写图片描述

目标选择“平面文件目标”,点击“浏览”选择导出文件路径及名称,点击下一步

这里写图片描述

选择要导出的表后面点击下一步完成即可导出成功。

导入到oracle

1、在某个文件夹下创建一个xxx.ctl文件,内容

load data infile '/xxx/xxx/xx.txt'                    //文本文件的绝对位置append into table doupoidx              //要导入的表名称fields terminated by ','             //分隔符定义,这里是逗号OPTIONALLY ENCLOSED BY '"'          //过滤"号TRAILING NULLCOLS               //对应字段的顺序。( time TimeStamp 'yyyy-mm-dd hh24:mi:ss', price, volume, interest)

2、打开DOS命令窗

sqlldr 用户名/密码@servername control=xxx.ctl errors=1000 rows=1000 data=/xx/xx/data.txt log=/xx/lcb_rccr_log.txt bad=/xx/lcb_rccr_err.txt
data.txt:导出数据的txt文件,log:日志文件路径,bad=导入失败数据记录文件路径。