我正在使用 SSIS 包将数据从 excel 表导入 SQL DB。在配置文件中,我使用了以下变量。
Name scope DataType Value
----------------------------------------------------
DBName package String DB_Master
Password package String xx
UserName package String sa
ServerName package String xxx.xxx.x.xx
SqlConnectionString package String DataSource=xxx.xxx.x.xxx;UserID=sa;Provider=SQLNCLI10.1;Integrated Security=SSPI;Auto Translate=False;Initial Catalog=DB_Master;Password=xx
右键单击 OLEDB ConnectionManager,然后单击属性窗口下方的值分配
ConnectionString - Initial Catalog=DB_Master;DataSource=xxx.xxx.x.xxx;UserID=sa;Provider=SQLNCLI10.1;Integrated Security=SSPI;Auto Translate=False;
DelayValidation - True
Expressions -ConnectionString - @[User::SqlConnectionString]
在 SqlConnectionString 变量属性窗口下面的值分配
EvaluateAsExpression -True
Expression -"DataSource=" + @[User::ServerName] + ";UserID=" + @[User::UserName] + ";Provider=SQLNCLI10.1;Integrated Security=SSPI;Auto Translate=False;Initial Catalog=" + @[User::DBName] + ";Password=" + @[User::Password]
部署包文件后,我将 SqlConnectionString DB_Master 中的 DBName 更改为 Master,但包执行 DB_Master 中的文件。
并且如果我给了无效的 ServerName 像 198.152.1 但包成功执行。
请告诉我我在哪里犯了错误。怎么了……?