【问题标题】:How to retrieve the SQL Server instance name from within a SSIS package如何从 SSIS 包中检索 SQL Server 实例名称
【发布时间】:2014-01-22 07:16:56
【问题描述】:

从 SQL Server 2012 开始,可以将 SSIS 部署到 SSIS 目录。在幕后,这个目录只是一个 SQL Server 数据库。

在我的一个包中,我目前有一个构成连接字符串的表达式。要设置与正确服务器实例的连接,连接管理器的连接字符串当前由以下表达式定义:

"Data Source=" + @[$Project::ServerInstance] + ";Initial Catalog=InitialCatalog;Provider=SQLNCLI11.1;Integrated Security=SSPI;Auto Translate=False;"

所以 SQL Server 实例由项目参数提供,而项目参数又由环境变量填充。

这对我来说似乎没有必要:包存储在数据库中,该数据库已经在 SQL Server 实例中运行。我只需要那个特定实例的名称。是否可以在项目部署模式下从 SSIS 中访问该名称?

【问题讨论】:

  • 使用serverproperty 'servername'@@servername 获取服务器名称的小脚本怎么样
  • @Sourav_Agasti 欢迎您提出脚本:)。

标签: sql-server ssis sql-server-2012


【解决方案1】:

我遇到了同样的问题,但我没有找到通过本机 SSIS 方式获得该值的方法。

我的解决方案:我刚刚写了

Data Source=(local); 

此解决方案的缺点是您的开发计算机还必须有一个包含所有表的本地 SQL Server 数据库。

可能的替代解决方案:您可以使用 Scrip Task 和 C# 库获得一些东西。我从未涉足此领域,但我确信它的巨大潜力。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-19
    • 2016-12-28
    • 1970-01-01
    • 1970-01-01
    • 2020-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多