【发布时间】:2021-08-18 01:13:21
【问题描述】:
我正在 Microsoft SQL Server Data Tools for Visual Studio 2017 中处理 SSIS 项目。我们必须使用 OleDB Source 组件将 Oracle 12C 数据库中的数据加载到 SQL Server 2017 数据库中。 如果我们从 Visual Studio 执行包,这会很好,但是,一旦我们将它部署到 SQL Server,并从那里执行它,包一旦到达 DataFlow 任务就会无限期地挂起。 我们收到的最后两条 SSIS 执行消息是:
OnPrevalidate: package_name: Validation has started.
OnInformation: package_name: Information: Validation phase is beginning.
包不会继续进行,并永久保持在运行状态。 我们在开发人员计算机和 SQL Server 上都安装了相同的 ODAC(64 位)组件包。
我们还尝试使用功能齐全的 ADO.NET 源代码,但它缺少“从变量查询”功能,并且它的查询构建器也不将查询识别为有效语法(声称 || 和这样是错误的),所以我们也不能参数化它。
我们花了几个小时寻找有类似问题的人,但遗憾的是找不到任何与我们的问题相同的人。
感谢您提前回复!
【问题讨论】:
-
您是否尝试过禁用 OLE db 源的
ValidateExternalMetadata属性?如果打开用于 Oracle 连接的连接管理器的属性,ConnectionManagerType是什么?另外,您使用的是哪个版本的 SQL Server 2017? -
我们确实尝试过,但没有成功。版本为14.0.17289.0,连接管理器为“Native OLE DB\Oracle Provider for OLE DB”。
标签: sql-server ssis