我需要在另一個包中的腳本任務的一個包中使用我在腳本任務中獲得的變量。如何使用跨越包的範圍創建變量?有沒有項目變量?SSIS腳本任務:如何在一個包中設置變量並在另一個包中使用它
1
A
回答
2
在SQL Server Integration Services 2012之前,在包之間共享值的唯一方法是使用父/子配置。實際上,你可以在不使用配置的情況下在它們之間共享一個值,但當所有的配置都出來時,它會很複雜
如果您有沒有必要進行雙向通信的,那麼你可以有包A(一個在腳本任務計算值)開始包B和使用/ SET屬性的值賦給變量
dtexec /file PackageB.dtsx /Set \Package.Variables[User::SharedVariable].Properties[Value];\"I was computed\"
在SQL Server 2012項目部署模型中,配置概念已被替換爲參數。當你定義參數並指定它們是否需要時,這會更直接一點。 Execute Package Task
提供了一個很好的局部變量和期望參數之間的映射機制。
1
在SSIS 2005和2008中: 在包級別聲明變量 - 說p爲int - 從父包中調用您的子包。 現在,如果您在Child包中具有腳本任務,則可以像這樣訪問變量p: 1.在子包的腳本任務編輯器中傳遞ReadOnly變量p 2.要訪問父變量:Dts.Variables [ 「p」]值; 請注意,我沒有在上述兩個步驟中使用「User :: p」。我發現這種方法很簡單。 確保您不要在子包級別聲明變量p。
那麼,這個方法是如何工作的?考慮變量範圍的基本概念。腳本任務將繼續「向上」以查找變量p。向上意味着 - 它將首先嚐試在任務級別,然後是容器級別,然後是包級別,然後在父級包級別找到它。 (這是一個簡單的解釋 - 從技術上說,每個級別都是容器。)
在SSIS 2012中,您還可以使用參數以ReadOnly模式傳遞變量。上述方法也可以在SSIS 2012中使用,並且可以覆蓋父變量的值。
相關問題
- 1. 在另一個包中設置變量
- 2. 在一個腳本中設置環境變量並在另一個腳本中使用此變量
- 3. Perl:如何在一個腳本中使用另一個腳本中的變量?
- 4. 如何在腳本任務中使用包變量?
- 5. 批處理腳本如何設置變中另一個變量
- 6. 如何在SQL中設置多個SSIS變量任務
- 7. 在SSIS中使用一個包含多個配置的包
- 8. 如何在SSIS中的腳本組件中設置包變量值
- 9. Php如何在變量名中包含另一個變量
- 10. 如何將變量包含在另一個變量中
- 11. 如何在另一個Perl腳本中使用變量?
- 12. 腳本任務中SSIS包到FTP
- 13. 在SSIS中的腳本任務中使用變量
- 14. 如何在gtk-rs閉包中設置一個變量?
- 15. SSIS:如何在另一個包中的腳本組件中重複使用腳本?
- 16. 如何檢查一個文本變量是否包含在另一個變量
- 17. 在Python包中包含一個腳本
- 18. 如何使用一個變量,在C++中另一個變量
- 19. 如何在我的腳本中使用另一個shell腳本中的變量?
- 20. 如何設置另一個變量,使用另一個變量使用python?
- 21. 如何在另一個角色中包含另一個角色的任務?
- 22. 如何從另一個腳本回顯包含html的變量?
- 23. 如何在shell腳本中包含一個包含變量的文件
- 24. 如何從SSIS中的腳本任務重置對象變量?
- 25. 一個SSIS包內的變量傳遞到PowerShell腳本
- 26. 在SSIS腳本任務中使用LINQ將值賦給變量
- 27. 在一個腳本中創建變量並在另一個腳本中使用。 JQuery/HTML/JS
- 28. SSIS:如何在腳本任務中添加全局變量?
- 29. 如何在SSIS中的另一個變量內使用變量值?
- 30. 如何用str變量在另一個腳本內執行一個腳本?