SSIS连接Oracle问题汇总

一、未安装Oracle客户端
错误提示:Test connection failed because of an error in initializing provider. 未找到 Oracle 客户端和网络组件。这些组件是由 Oracle 公司提供的,是 Oracle 7.3.3 版(或更高)客户软件安装的一部分。在安装这些组件之前,将无法使用此提供程序。
在这里插入图片描述

出现这个提示的原因是没有安装oracle客户端,SSIS连接Oracle数据源必须要安装客户端才能连接成功。

二、服务器名错误
错误提示:由于在初始化提供程序时出错,导致连接测试失败。ORA-12504: TNS: 监听程序在 CONNECT_DATA 中未获得 SERVICE_NAME
在这里插入图片描述

解决方法:服务器名要与安装文件中tnsnames.ora中的自定义命名一致,例如:我这里的自定义命名为ORACLE,那么在连接oracle时中的服务器名就必须填写oracle(不区分大小写)
在这里插入图片描述

在这里插入图片描述

三、数据类型不支持
错误提示:

异常来自 HRESULT:0xC0202009
数据流任务 [OLE DB 源 [1]] 出错: SSIS 错误代码 DTS_E_OLEDBERROR。出现 OLE DB 错误。错误代码: 0x80004005。
已获得 OLE DB 记录。源:“Microsoft OLE DB Provider for Oracle” Hresult: 0x80004005 说明:“发生了一个 Oracle 错误,但无法从 Oracle 中检索错误信息。”。
已获得 OLE DB 记录。源:“Microsoft OLE DB Provider for Oracle” Hresult: 0x80004005 说明:“数据类型不被支持。”。
在这里插入图片描述

原因说明:Oracle数据源在SSIS中不支持日期类型的数据

解决方法:将日期类型转换为字符串,如:select to_char(FBEGINDATE,‘yyyy-mm-dd hh24:mi:ss’) as FBEGINDATEFENDDATE from T_BD_PERIOD

四、字符串代码页值不正确
警告提示:

该组件发出了以下警告:
{1BE60367-95D6-490F-B46A-5C982C6953F3} [OLE DB 源 [1]] 发出警告: 无法从 OLE DB 访问接口检索列代码页信息。如果该组件支持“DefaultCodePage”属性,将使用来自该属性的代码页。如果当前的字符串代码页值不正确,请更改该属性的值。如果该组件不支持该属性,将使用来自该组件的区域设置 ID 的代码页。
在这里插入图片描述

解决方法:单击右键》属性》修改AlwaysUseDefaultCodePage为True(默认为false)
在这里插入图片描述

五、数据源连接失败
错误提示信息:

[OLE DB 源 [45]] 错误: SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。对连接管理器“oracle.cyeas”的 AcquireConnection 方法调用失败,错误代码为 0xC0209303。可能在此之前已经发出错误消息,提供了有关 AcquireConnection 方法调用失败原因的详细信息。

错误截图如下
在这里插入图片描述

这个错误是刚新建一个项目时经常遇到的,解决方法很简单,如下操作即可

1.选中项目单击右键,选择“属性”
在这里插入图片描述

2.配置属性——调试——调试选项

将Run64BitRuntime的属性改为False(默认为True)

在这里插入图片描述
原文:https://www.cnblogs.com/ykagile/p/9994243.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值