2010-03-16 30 views
9

我有一个SSIS包内置在业务Intellegience开发工作室,它有指定的源和目标数据库。现在我想用一些变量来参数化数据库连接并在命令行中运行这个包。如何参数化SSIS包中的数据库连接字符串?

我尝试用我的变量@ [User :: SourceDb]替换数据库名称和sql服务器实例。 @ [User :: SourceHost],但它无法连接到数据库。

是否有可能参数化数据库,并且我的变量使用有什么问题?提前致谢!

+0

可能重复[SSIS如何从配置文件动态设置连接字符串](http://stackoverflow.com/questions/2497875/ssis-how-to-set-connection-string-dynamically -from-a-config-file) – 2016-11-15 19:23:31

回答

5

有一个不错的帖子here详细说明了这样做的一种方法。

您需要使用ConnectionManager并从Configuration Package中设置ConnectionString属性。

ConnectionString属性是一个完全合格的数据库连接字符串,如

Data Source=localhost;Initial Catalog=SSISConfig;Provider=SQLNCLI.1;Integrated Security=SSPI;Auto Translate=False; 

有几个陷阱和烦恼使用配置包,所以你可能要反复折腾了一下。我会更详细些,但是自从我上一次参与SSIS项目以来已经过去了大约一年。

如果您有任何具体问题,请回来评论一下您所点击的内容。我会尝试并重温旧的记忆。

+0

是的,它的工作原理!对此,我真的非常感激! – Roy 2010-03-16 09:57:20

+1

嗨大卫:-)猜猜谁又在做SSIS: -/ – 2015-08-03 08:41:26

0

任何你可以右键点击连接项目或包和“参数化”来自连接,项目或包参数的所有字段。连接字符串与.NET提供程序(SqlClient数据提供程序)类型的OLE DB连接不同,所以请小心。一个集中的地方nection在Project.params

+0

不是在2008年,这是问题中指定的版本。 – podiluska 2016-11-24 12:18:46