- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有大约 85 个使用相同连接管理器的 SSIS 包。我知道每个包都有自己的连接管理器。我正在尝试确定什么是最好的配置方法,以根据包所在的服务器简单地设置连接管理器的连接字符串。我已经在线访问了各种建议,但在任何地方都找不到可以简单地将配置从一个包复制到其余包的做法。显然有很多方法,例如 XML 文件、SQL Server、环境变量等。
那里的所有文章都指向通过使用 XML 或 SQL 方法来使用间接方法。为什么使用环境变量来保存连接字符串是一种糟糕的方法?
非常感谢任何建议。
谢谢!
最佳答案
我发现环境变量或注册表项配置方法受到严重限制,因为它一次只能配置一个项目。对于连接字符串,您需要为给定服务器上的每个目录定义一个环境变量。也许只有 2 或 3 个,这是可以控制的。我们每个数据库实例有 30 多个,而且我们有多实例机器,所以你可以看到这个问题多快会爆发成维护噩梦。将其与基于表或 xml 的方法进行对比,后者可以为给定的配置键保存多个配置项。
如果您选择这条路线,我建议创建一个变量 ConnectionString 并使用它来配置属性。这是一个额外的步骤,但我再次发现调试变量上的复杂表达式比调试属性上的复杂表达式更容易。使用变量,您始终可以在包上弹出断点并查看本地窗口以查看当前值。
创建一个名为 ConnectionString 的变量后,我右键单击它,选择 Properties 并将 EvaluateAsExpression 设置为 True,并将 Expression 属性设置为类似 "Data Source="+ @[System::MachineName] +"\\DEV2012;Initial Catalog=FOO;Provider=SQLNCLI11.1;Integrated Security=SSPI;"
当它被评估时,它会填写当前机器的名称 (DEVSQLA),我将有一个连接到命名实例 DEV2012 的有效 OLE DB 连接字符串。
Data Source=DEVSQLA\DEV2012;Initial Catalog=FOO;Provider=SQLNCLI11.1;Integrated Security=SSPI;
如果您有比一个变量更复杂的配置需求,那么我可以看到您使用它来配置一个连接管理器到一个 sql 表,该表包含所有配置键和值的完整存储库。
我将着手通过编程途径修改所有 80 多岁的包。我们从第三方收到了一批软件包,但他们没有遵循我们的配置和日志记录程序。代码并不难,如果您准确描述为满足您的需求而进行的更改类型,我很乐意将一些代码扔到这个答案上。它可以像下面这样简单。调用该函数后,它将通过将 SSISDB ole 连接管理器上的 sql server 配置添加到名为 default.2008.Sales 的过滤器的名为 dbo.sysdtsconfig 的表来修改包。
string currentPackage = @"C:\Src\Package1.dtsx"
public static void CleanUpPackages(string currentPackage)
{
p = new Package();
p.app.LoadPackage(currentPackage, null);
Configuration c = null;
// Apply configuration Default.2008.Sales
// ConfigurationString => "SSISDB";"[dbo].[sysdtsconfig]";"Default.2008.Sales"
// Name => MyConfiguration
c = p.Configurations.Add();
c.Name = "SalesConfiguration";
c.ConfigurationType = DTSConfigurationType.SqlServer;
c.ConfigurationString = @"""SSISDB"";""[dbo].[sysdtsconfig]"";""Default.2008.Sales""";
app.SaveToXml(sourcePackage, p, null);
}
将变量添加到包中不会占用更多代码。在 cleanup proc 中,添加这样的代码,以将一个新变量添加到具有上述表达式的包中。
string variableName = string.Empty;
bool readOnly = false;
string nameSpace = "User";
string variableValue = string.Empty;
string literalExpression = string.Empty;
variableName = "ConnectionString";
literalExpression = @"""Data Source=""+ @[System::MachineName] +""\\DEV2012;Initial Catalog=FOO;Provider=SQLNCLI11.1;Integrated Security=SSPI;""";
p.Variables.Add(variableName, readOnly, nameSpace, variableValue);
p.Variables[variableName].EvaluateAsExpression = true;
p.Variables[variableName].Expression = literalExpression;
如果我遗漏了什么或者您想澄清任何要点,请告诉我。
关于sql - 将 SSIS 包配置应用于多个包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11547304/
通过终端,您可以使用命令 - “SetFile -a B 文件名” 以编程方式,我认为我应该通过[[NSFileManager defaultManager] createDirectoryAtPat
嗨,正在尝试书中的一些示例:Practical Graph mining with R对于子图挖掘: library(subgraphMining) library(igraph) graph1 =
代码中的相同问题: class Foo { int getIntProperty () { ... } CustomObject getObjectProperty () { ... }
所以这可能是一个愚蠢的问题,但它已经困扰我一段时间了。 使用 React,我创建了两个组件(Buttons.js 和 Message.js),每个组件都有一个导出。但是,现在我希望将这两个组件用作 n
从今天早上开始,我发现我无法再从某个范围安装任何 NPM 包(或任何具有依赖项的包)。例如,如果我输入 npm i webpack 我会收到以下错误... npm ERR! code E401 npm
我在这里搜索过,Angular 2, @ngtools/webpack, AOT ,但对我不起作用。我运行了 npm install 命令。我正在做的是创建一个新的 Angular 2 项目。当我运行
情况: 我有一个 Swift 包,将其命名为 lib。 lib 位于其自己的存储库中。在lib的仓库中,有一堆本地包;也就是说,这些包是在 lib 中定义的,使用本地路径依赖格式 .package(p
我想在工作中学习和使用nodejs,但是在使用 de npm 命令安装模块/包时遇到网络问题。我是否可以使用我的家用计算机构建完整的 Node js 包,然后将其安装在另一台计算机(我的工作场所计算机
我需要将一些 .tar.bz2 格式的非 Python 包转换为 Anaconda/miniConda .egg 文件并安装它们。为此,我需要一个适用于 Windows 的 bld.bat 文件。互联
我需要共享库文件 libthrift-0.9.3.so 作为其他包的依赖项。我在构建 thrift-0.9.3 包时看到编译问题(我确实从 https://thrift.apache.org/down
我尝试在 R 版本 3.5.0 中安装“arcgisbinding”包。但是我失败了,得到以下错误和警告。 Installing package into ‘C:/Users/Lenovo/Docum
我尝试在 R 版本 3.5.0 中安装“arcgisbinding”包。但是我失败了,得到以下错误和警告。 Installing package into ‘C:/Users/Lenovo/Docum
我试图在 flutter 中测试这个应用程序,但我无法运行该应用程序,因为出现此错误“名称‘Page’在库‘package:burn_off/widgets/page.dart’和‘package’中
试图理解和学习如何编写包...用我一直使用的东西进行测试,记录... 您能帮我理解为什么“日志”变量不起作用...并且屏幕上没有日志记录吗? 谢谢! 主要文件: #!/opt/local/bin/py
我尝试运行此使用 Google 云的代码。 import signal import sys from google.cloud import language, exceptions # creat
我想知道是否有人找到了一个很好的 R 包来分析眼动追踪数据? 我遇到了 eyetrackR,但据我所知,没有可用的英文支持文档: http://read.psych.uni-potsdam.de/pm
我正在 R 上制作一个包。我有两个函数共享一个变量(全局)。 如何将其导入到包中? 例如, m<-0 f<-function() { m <- m+1 } g<-function() { m <- m
我用 C 为 Lua 编写了很多模块。每个模块都包含一个 Lua 用户数据类型,我像这样加载和使用它们: A = require("A") B = require("B") a = A.new(3,{
我正在尝试在 R 中的 Ubuntu 上安装 xlsx 包,以便使用允许在 R 中插入链接然后将它们导出到 Excel 的功能。 话虽如此,我根本无法安装该软件包。 显然它必须与 rJava 一起使用
我想在 Haskell 中做一些蒙特卡洛分析。我希望能够编写这样的代码: do n <- poisson lambda xs <- replicateM n $ normal mu sigma
我是一名优秀的程序员,十分优秀!