2016-03-16 76 views
0

我在SQL Server中創建了一個SSIS包來從ODBC源(QuickBase應用程序)導出數據。我也通過SQL Server中的SQL作業代理來安排它,並且一切正常。SSIS VS_NEEDSNEWMETADATA錯誤

當來源發生一些變化時,作業將失敗。

我在修改從中導出數據的源表的列時遇到錯誤VS_NEEDSNEWMETADATA。

刷新元數據後,它工作,但我想永久解決這個錯誤。

如何自動刷新元數據,請幫我。

謝謝。

回答

0

SSIS本身沒有提供這樣的功能。元數據是一個設計時間函數,因此是靜態的。每次基礎元數據更改時,您都必須刷新並重新驗證。 在codeplex上有一些自定義組件會執行自動元數據刷新。但是,上次我看到一個,它只能用於文件系統存儲。

只是想知道爲什麼你需要經常更改元數據?當現有列被修改時出現此錯誤。如果數據庫設計是正確的,那麼我會認爲這樣的改變將是最小的。

+0

我的源代碼是Quickbase數據,它會經常更改,因爲用戶需求是在源代碼中添加新列,然後我的軟件包給我這個錯誤 – Jack

+0

如果要求將新列添加到源,則不應發生元數據錯誤只要你沒有寫出類似於「select *」的東西來檢索源碼中的所有列。如果您指定了列名,那麼只有在您更改有關這些列的信息時纔會出現元數據錯誤。新欄目不會引起問題。 – AKS

+0

是的,在我的源連接我有選擇表格視圖和表格視圖就像「選擇*」 – Jack