我使用“导入和导出”向导创建了一个SSIS文件。使用该向导似乎将连接字符串硬编码到SSIS文件中;我想要做的是将连接字符串传递给文件,以便我可以配置目标数据库。有谁知道怎么做?
编辑更多信息:从技术上讲,我使用dtexec从PowerShell脚本执行了17个SSIS包。我希望PowerShell脚本/ dtexec能够将连接字符串传递到每个SSIS包中。我使用SQL Server导入/导出向导创建了这些包。
答案 0 :(得分:12)
假设软件包在C:\ ssis中,您的连接管理器名为MyConnectionManager,这将覆盖该值并将其指向localhost。
dtexec /file C:\ssis\pkg1.dtsx /conn "MyConnectionManager";"\"Data Source=localhost\TestSQL2008R2;Initial Catalog=ConnDB;Integrated Security=SSPI;\""
答案 1 :(得分:1)
该示例提供了最佳的简单解决方案,以促进跨环境的SSIS。请参阅Rafael Salas的以下博客,了解更多选项。 Understanding Integration Services Package Configurations
答案 2 :(得分:1)
您也可以使用dtexecui的图形shell来配置包的参数。此UI有一个“命令行”选项卡,您可以在其中找到所有参数,转换为命令字符串,您可以将其用作控制台dtexec的参数。 您可以在http://sqlstudies.com/2013/07/31/using-dtexecui-to-generate-a-dtexec-command-line-statement-the-easy-way/
获取分步示例