我试图想出一种方法,我可以将运行SSIS作业的SQL服务器名称传递给包中的变量。
基本上,运行此Job的服务器将被传递到包中的Ole DB Connection中的ServerName属性,以便将数据加载到该服务器中。
我一直在查看有关包配置的文档,我觉得它会在环境变量部分。但是,我不认为任何列出的"环境变量"是服务器名称。我已经用Google搜索了这个问题,并在StackOverflow上搜索了问题,但我似乎无法找到这个问题。
答案 0 :(得分:0)
可能有一些不同的方法,但我认为您可以通过一个简单的执行SQL任务来实现这一目标。
创建新的执行SQL任务
一般情况下 - > SQL语句,在" SQLStatement"中输入您的查询Select @@SERVERNAME as ServerName
。字段
一般情况下 - >结果集,选择"单行"
在参数映射下,输入您的变量(如果您没有,则创建一个)变量名称中的User :: ServerName,"输入"作为方向,0作为参数名称,-1作为参数大小
在结果集下,输入" ServerName"为您的结果名称并在变量名称
点击确定
给它一个去看看它是否能达到你想要的效果。
答案 1 :(得分:0)
我能够通过使用脚本任务和C#代码来获取机器名称或运行它的机器的IP地址。
Dts.Variables [" User :: ServerName"]。Value = System.Net.Dns.GetHostName();