【发布时间】:2022-01-20 15:36:29
【问题描述】:
我正在使用 SSIS 2019 并且能够使用 ADO.Net 连接管理器执行 SQL 命令。 我想在数据流任务的脚本组件中使用 OLEDB 连接管理器,但出现以下错误:
System.InvalidCastException:无法将“System.__ComObject”类型的 COM 对象转换为“System.Data.SqlClient.SqlConnection”类类型。表示 COM 组件的类型的实例不能转换为不表示 COM 组件的类型;但是,只要底层 COM 组件支持对接口的 IID 的 QueryInterface 调用,它们就可以转换为接口。
有人可以告诉我我们是否可以在数据流的 SSIS 脚本组件中使用 OLEDB 连接。
这是连接字符串的代码
public override void PreExecute()
{
string conn = this.Connections.Connection.ConnectionString;
}
我没有在脚本 C# 代码中遇到构建错误。但是在脚本组件中出现错误。
【问题讨论】:
-
既然您正在编写 .Net 脚本任务,为什么不直接使用 .Net SqlConnection?
-
感谢您的建议。我想使用 Package.config,因为它部署在多个环境中。
-
好的。无论哪种方式都可以。
-
您需要提供您在脚本中使用的 C# 代码
-
使用 c# 代码更新了描述。但在脚本组件中出现问题。
标签: sql-server ssis etl oledbconnection script-task