2013-02-01 104 views
0

我遇到了一些我們的軟件包的問題。基本佈局是連接字符串存儲在數據庫的SSIS配置表中。SSIS配置連接字符串

我最近注意到我的oledb連接的服務器名稱似乎保持不變。我已經看到我將軟件包從一個環境移動到另一個環境,並且驗證失敗。如果我將密碼更改爲在第一個環境中使用的密碼,它將進行驗證。

除了連接字符串之外,還有其他一些屬性是否需要存儲?我沒有使用變量或表達式。

有沒有人見過這個?有問題的服務器版本是2008 R2。

回答

0

這很可能是因爲它試圖使用存儲在包本身中的連接字符串進行驗證,而不是使用配置文件提供的連接字符串進行驗證。我知道有兩種方法可以解決此問題:

  1. 每個連接管理器和數據流任務都有一個名爲DelayValidation的屬性。設置爲true時,該屬性將阻止SSIS在配置更改連接字符串之前嘗試驗證連接和數據流任務。麻煩的是,默認值爲false,您必須在每個連接管理器和數據流任務上進行設置。每次創建新設置時,還需要記住翻轉設置。
  2. 您可以手動或以編程方式更改SSIS包中連接字符串的實際值,以便在部署之前匹配配置文件。無可否認,這看起來似乎首先破壞了配置文件的目的,但確實能夠起作用。這是我經常最終選擇的選項。在我從測試環境轉移到生產環境之前,我彈出在文本編輯器中打開包並查找/替換連接字符串。我已經確定爲我的包裹安全,但是,就像任何這樣的解決方案一樣,你的里程可能會有所不同。