SqlServer导出数据至Oracle.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SqlServer导出数据至Oracle

Sql Server导出数据至Oracle方法 利用Sql Server的DTS导出 首先,也是最重要的,一定要先设置好要导入到的oracle所对应的数据源驱动。也就是在Windows下创建一个ODBC数据源: 控制面板——管理工具——数据源(ODBC),系统 DSN” 项卡中点击添加按钮,选择相关Oracle驱动。这一点如果你不配置,那么在后面的Sql Serve DTS导数据到oracle时候,它会有一个默认的数据源驱动,但可能版本太早,里面的字段和oracle 10g有些不兼容,这样会造成后面在导出数据的时候出现一些字段换失败之类的错误。 下面以我在本机上的操作截图说明一下: 1)右击数据库,任务---导出数据: 2)选择要导出的数据源,如果针对本机数据库,按照默认选项即可,点击下一步: 3)选择要导入的数据源,这一块就是要注意的地方,oracle 10g 数据源在此处为Oracle provide for OLE DB,如果没有自己注册oracle 10g数据源的话,它上面默认的有一个Microsoft OLE DB Provider for Oracle,切记一定要自己配置。 4)选择之后,点击属性按钮,配置自己的oracle数据库数据源,名称和密码,注意选上允许密码保存复选框,之后测试是否连接成功。 5)点击下一步,出现如下视图 6)选中要导入的表,然后把目标表中的名称改为大写,这块最好也自己配置一些,选中表,点击“编辑映射”,对里面Sql Server自动生成的和oracle 10g字段对应关系中不合理的字段进行修改,在oracle 10g里面一般只有Int字段有问题,而默认的oracle注册驱动对于大数据类型nclob,和nvarchar2都多少有些问题,修改以后点击“编辑SQL”按钮,生成最终合适的sql语句。之后一路nxt,就可完成。 int 4 NUMBER(10) tinyint 1 NUMBER(3) bigint 8 NUMBER(19) smallint 2 NUMBER(5) real 4 BINARY_FLOAT numeric 9 NUMBER(18) float 8 BINARY_DOUBLE decimal 9 NUMBER(18) bit 1 NUMBER(2) datetime 8 DATE smalldatetime 4 DATE timestamp 8 RAW(8) image 16 BLOB char 10 CHAR(10) nchar 10 NCHAR(10) varchar 50 VARCHAR2(50) nvarchar 50 NVARCHAR2(50) text 16 CLOB ntext 16 NCLOB money 8 NUMBER(19,4) smallmoney 4 NUMBER(10,4) sql_variant? BLOB uniqueidentifier 16 BLOB binary 50 RAW(50) varbinary 50 RAW(50) 可能碰到的问题 字段类型转换错误 一般来说,DTS会自动将sql server的数据类型转换为oracle的类型,但有些情况下可能转换有问题,这需要在上述第六步中手动更改。 sql server的text类型字段值为空字符串时,oracle的clob字段不接受。 在导入数据时,如果sql server的text类型字段值为空字符串,则oracle会报错,无法导入,所以在导入前,需要批量将sql server text类型的字段值为空字符串的改为null。

文档评论(0)

2105194781 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档