开发 SSIS 包






2.11/5 (7投票s)
2006年11月2日
1分钟阅读

78887
一篇关于配置 SSIS 包的文章。
引言
本文描述了如何在 SQL Server 2005 Integration Services (SSIS) 中配置和创建表达式。
使用代码
如果你想在另一台机器上使用开发的包,它可能会因为包加密而无法打开。通常,一个包以 XML 格式存储,并且根据你配置的设置进行加密。默认情况下,该包的保护级别属性为“EncryptSensitiveWithUserKey
”。在这种情况下,每次保存包时,它都会使用机器凭据加密所有敏感信息(如密码)并保存。我更喜欢将此属性值设置为 DontSaveSensitive
,它不会保存任何敏感信息。
但是这里有一个问题。如果它不保存任何信息,那么当用户尝试运行包时,我们如何获取所需的信息呢?为此,你必须创建变量并在需要时创建表达式。
假设你想将数据从源(文本文件)导出到目标(SQL Server)。你需要维护源路径以及目标连接,并将它们保存在变量中。像这样创建变量
SourceConnection..."c:\source\"
DestiUserID= "sa"
DestiPassword="sa"
DestiDataBase ="TempData"
DestDataSource= "10.12.12.123"
将这些变量的范围设置为包级别。在为源和目标创建连接管理器时,不要使用标量连接字符串,而是使用可以实时评估表达式的动态连接字符串。将 OLEDB 的连接字符串表达式设置为
Data Source= "+ @[User::DestDataSource] +";User ID= "+
@[User::DestiUserID] +";Password= "+
@[User::DestiPassword] +
";Initial Catalog= "+ @[User::DestiDataBase] +
";Provider=SQLNCLI.1;Auto Translate=False;"
将源的连接字符串表达式设置为@[User::SourceConnection]+"source.txt"
表达式遵循 C# 语法。