在SSIS脚本任务

时间:2018-07-10 18:49:44

标签: ssis

在我的SSIS程序包中,有一个名为LAMP的程序包级连接管理器,现在我想在脚本任务中访问它。我试图用它来获取连接字符串:

var conn = Dts.Connections["LAMP"].AcquireConnection(Dts.Transaction) as string;

,但是返回一个空字符串。是否可以拉出程序包级别的连接字符串?

它是使用Native OLE DB\SQL Server Native Client 11.0提供程序的OLEDB连接管理器。

1 个答案:

答案 0 :(得分:0)

坦白说,您正在倒退。创建一个变量来存储连接字符串。然后,将连接字符串作为ConnectionString表达式分配给Lamp连接管理器,同时还要从脚本任务编辑器中读取连接字符串变量。以下步骤应有帮助:

  1. 创建一个变量调用ConnectionStringLamp
  2. 将来自连接管理器的连接字符串输入变量
  3. 单击Lamp的连接管理器。在“属性”窗口(右下方)中,单击表达式的省略号(...)
  4. 选择ConnectionString,然后分配变量ConnectionStringLamp
  5. 在“表达式”构建器中对其进行验证,以确保该值已填充
  6. 在脚本任务编辑器中,确保选择ConnectionStringLamp作为只读(如果打算更改它,则选择为读写)。
  7. 在您的代码中:

    string strConnectionStringLamp = (string) Dts.Variables["ConnectionStringLamp"].Value;