在商業(yè)智能解決方案中,SSIS工程有兩種部署模式:工程部署(project deployment)和包部署(package deployment),默認是工程部署模式,在Package的管理上,工程部署模式是當前主流的部署模式,比包部署的更容易管理,也更容易對package進行調試和故障排除,而包部署模式是傳統(tǒng)的部署模式在包部署模式中。在包部署模式中,SSIS引擎支持包配置(Package Configuration)功能,用戶能夠在Package運行時動態(tài)修改屬性值。包配置是配置項的集合,每一個配置項(configuration item)是一個屬性/值對(property/value pair)。用戶向包配置中增加配置項,Package在運行時從包配置中獲取屬性值,對Package的執(zhí)行進行編程控制,特別在批量管理Package的場景中,比如,批量修改Package的某一個公共變量的值,切換Package的測試和產(chǎn)品環(huán)境等,包配置十分有用。
一般情況下,包配置信息存儲在SQL Server數(shù)據(jù)庫中,用戶能夠配置的Package對象共有四種,分別是:
Connection Managers:Package的鏈接管理器(connection managers);
Executables:package 的可執(zhí)行組件;
Propertites:package的properties;
Variables:package的variables;
以上四種Package對象,都能夠被參數(shù)化配置,這是SSIS能夠把其屬性值存儲在包配置中,并能夠在執(zhí)行時應用屬性的配置值的基礎。
在執(zhí)行Package時,SSIS Package首先讀取包配置信息,將包配置中的屬性值應用到Package中,然后執(zhí)行package的可執(zhí)行組件(executables);修改包配置中屬性的值,將動態(tài)改變Package的執(zhí)行上下文,例如,測試環(huán)境和產(chǎn)品環(huán)境的切換,修改鏈接管理器(Connection Manager)的連接字符串的值,使package將運行結果同步到測試環(huán)境中;在測試環(huán)境中package運行無誤后,再將其部署到Production 環(huán)境中,如果使用包配置管理鏈接管理器的鏈接字符串,那么只需要修改包配置中Connection Manager的連接字符串的值,而不需要對Package做任何修改。
一,切換到包部署模式
SSIS Project默認的部署模式是Project Deployment Model,在解決方案的工程列表中選中工程,右擊彈出快捷菜單,點擊“Convert to Package Deployment Model”,將Project的部署模式轉換為包部署模式。
切換到包部署模式之后,Project名稱之后顯示模式名稱:(package deployment model)
二,設計Package
向Package中添加一個變量(VarCode)和一個Execute SQL Task組件,在Task組件中執(zhí)行如下的TSQL語句腳本,“?”代表參數(shù),映射到變量(VarCode),把變量的值插入到指定的表中
網(wǎng)友評論