升級 Integration Services 封裝
當您將 SQL Server 2005 或 SQL Server 2008 的實例升級至目前的 SQL Server 版本時,現有的 SQL Server 2008 Integration Services (SSIS) 套件不會自動升級為目前版本的 SQL ServerIntegration Services 所使用的套件格式。 您必須選取升級方法並手動升級您的封裝。
當您升級 SQL Server 2005 套件時,Integration Services 會將任何腳本工作和腳本元件中的腳本移轉至Microsoft Visual Studio Tools for Applications (VSTA) 。 在 SQL Server 2005 中,腳本工作或腳本元件中的腳本使用 Microsoft Visual Studio for Applications (VSA) 。 如需您可能必須在移轉之前對指令碼進行的變更以及指令碼轉換失敗的詳細資訊,請參閱將指令碼移轉到 VSTA。
如需將專案轉換為專案部署模型時升級封裝的相關資訊,請參閱 將專案部署至 Integration Services 伺服器。
SQL Server 2000 Data Transformation Services 封裝
目前版本的 SQL ServerIntegration Services 已停止移轉或執行資料轉換服務 (DTS) 套件。 下列 DTS 功能已停用:
DTS 執行階段
DTS API
「封裝移轉精靈」可將 DTS 封裝移轉到下一版的 Integration Services
支援 SQL Server Management Studio 中的 DTS 封裝維護
執行 DTS 2000 封裝工作
DTS 封包的 Upgrade Advisor 掃描。
下列選項可用於移轉 DTS 封裝。
將套件遷移至 SQL Server 2005 Integration Services (SSIS) 或 SQL Server 2008 Integration Services (SSIS) ,然後將套件升級至 SQL Server 2012 Integration Services (SSIS) 。
如需將 DTS 套件移轉至 SQL Server 2005 Integration Services (SSIS) 和 SQL Server 2008 Integration Services (SSIS) 的資訊,請參閱移轉資料轉換服務套件 (2005) 和移轉資料轉換服務套件 (2008) 。
使用 SQL Server 2012 Integration Services (SSIS) 重新建立 DTS 套件。
如需 SQL Server 2012 Integration Services (SSIS) 新功能的相關資訊,請參閱 (Integration Services) 新功能。 如需 Integration Services 套件結構的概觀,請參閱 Integration Services (SSIS) 套件。
選取升級方法
您可以使用各種方法來升級 SQL Server 2005 和 SQL Server 2008 套件。 對於其中某些方法而言,升級只是暫時性。 對於其他方法而言,升級則是永久性。 下表將描述每種方法以及升級是暫時性或永久性。
注意
當您使用dtexec公用程式 (dtexec.exe) 隨目前版本的 SQL Server 一起安裝SQL Server 2005 或 SQL Server 2008 套件時,暫存套件升級會增加執行時間。 所增加的封裝執行時間長短,取決於封裝的大小。 如要避免執行時間增加,建議您在執行前先升級封裝。
升級方法 | 升級的類型 |
---|---|
使用隨目前版本的 SQL Server 一起安裝的dtexec公用程式 (dtexec.exe) 來執行 SQL Server 2005 或 SQL Server 2008 套件。 如需詳細資訊,請參閱 dtexec Utility。 |
封裝升級是暫時性的。 對於 SQL Server 2005 套件,腳本移轉是暫時的。 這些變更無法儲存。 |
在 SQL SERVER DATA TOOLS (SSDT) 中開啟 SQL Server 2005 或 SQL Server 2008 套件檔案。 | 如果您儲存了封裝,封裝升級就是永久性。不過,如果您沒有儲存封裝,封裝升級就是暫時性。 對於 SQL Server 2005 套件,如果您儲存封裝,腳本移轉是永久的;否則,如果您未儲存封裝,則為暫時性。 |
將 SQL Server 2005 或 SQL Server 2008 套件新增至 SQL Server Data Tools (SSDT) 中的現有專案。 | 封裝升級是永久性的。 對於 SQL Server 2005 套件,腳本移轉是永久的。 |
在 Visual Studio 中開啟 SQL Server 2005 Integration Services (SSIS) 或 SQL Server 2008 Integration Services (SSIS) 專案檔,然後使用 SSIS 套件升級精靈升級專案中的多個套件。 如需詳細資訊,請參閱 使用 SSIS 封裝升級精靈來升級 Integration Services 封裝 和 SSIS 封裝升級精靈 F1 說明。 |
封裝升級是永久性的。 對於 SQL Server 2005 套件,腳本移轉是永久的。 |
使用 Upgrade 方法升級一或多個 Integration Services 封裝。 | 封裝升級是永久性的。 對於 SQL Server 2005 套件,腳本移轉是永久的。 |
自訂應用程式和自訂元件
SQL Server 2005 Integration Services (SSIS) 自訂群組件不適用於目前的 SQL ServerIntegration Services 版本。
您可以使用目前版本的 SQL ServerIntegration Services 工具來執行和管理包含 SQL Server 2008 和 SQL Server 2008 R2SSIS 自訂群組件的套件。 我們已將四個系結重新導向規則新增至下列檔案,以協助將執行時間元件從 10.0.0.0 版重新導向 (SQL Server 2008 R2) 11.0.0.0 版 (SQL Server 2014) 。
DTExec.exe.config
dtshost.exe.config
DTSWizard.exe.config
DTUtil.exe.config
DTExecUI.exe.config
若要使用 SQL Server Data Tools 設計包含 SQL Server 2008 和 SQL Server 2008 R2 自訂群組件的套件,您必須修改位於< drive >:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE 的 devenv.exe.config 檔案。
若要將這些套件與以執行時間為 SQL Server 2014 建置的客戶應用程式搭配使用,請在可執行檔之 *.exe.config 檔案的組態區段中包含重新導向規則。 規則會將執行時間元件重新導向至 11.0.0.0 版 (SQL Server 2014) 。 如需重新導向組件版本向的詳細資訊,請參閱 <runtime> 的 <assemblyBinding> 元素。
尋找組件
在 SQL Server 2014 中,Integration Services 元件已升級至 .NET 4.0。 .NET 4 自有個別的全域組件快取,位於 <磁碟機>:\Windows\Microsoft.NET\assembly 中。 您可以在此路徑底下 (通常在 GAC_MSIL 資料夾中) 找到所有 Integration Services 組件。
如同舊版 SQL Server,核心 Integration Services 擴充性 .dll 檔案也位於 <磁碟機>:\Program Files\Microsoft SQL Server\100\SDK\Assemblies。
了解 SQL Server 封裝升級結果
在套件升級程式期間,SQL Server 2005 和 SQL Server 2008 套件中的大部分元件和功能都會順暢地轉換成目前版本的 SQL Server 對應專案。 不過,其中有許多元件和功能不會升級,或者具有您應該注意的升級結果。 下表將識別這些元件和功能。
注意
若要識別哪些封裝具有下表所列的問題,請執行 Upgrade Advisor。 如需詳細資訊,請參閱< Use Upgrade Advisor to Prepare for Upgrades>。
元件或功能 | 升級結果 |
---|---|
連接字串 | 針對 SQL Server 2005 和 SQL Server 2008 套件,特定提供者的名稱已變更,而且連接字串中需要不同的值。 若要更新連接字串,請使用下列其中一個程序: -使用 [SSIS 封裝升級精靈] 升級套件,然後選取 [ 更新連接字串以使用新的提供者名稱 ] 選項。 -在 [SQL Server Data Tools (SSDT) ] 對話方塊的 [一般] 頁面上,選取 [更新連接字串以使用新的提供者名稱] 選項。 如需此選項的詳細資訊,請參閱 一般頁面。 -在SQL Server Data Tools (SSDT) 中,開啟套件並手動變更 ConnectionString 屬性的文字。 請注意:當連接字串儲存在組態檔或資料來源檔案中,或者運算式設定 ConnectionString 屬性時,您無法使用先前的程序更新連接字串。 在這些情況下,若要更新連接字串,您必須手動更新檔案或運算式。如需資料來源的詳細資訊,請參閱 資料來源。 |
查閱轉換 | 針對 SQL Server 2005 套件,升級程式會自動將查閱轉換升級至目前版本的 SQL ServerIntegration Services。 但目前版本中的此元件另有一些功能可以供您使用。 如需相關資訊,請參閱 Lookup Transformation。 |
指令碼工作和指令碼元件 | 針對 SQL Server 2005 套件,升級程式會自動將腳本工作和腳本元件中的腳本從 VSA 遷移至 VSTA。 如需您可能必須在移轉之前對指令碼進行的變更以及指令碼轉換失敗的詳細資訊,請參閱將指令碼移轉到 VSTA。 |
以 ADODB.dll 為基礎的指令碼
直接參考 ADODB.dll 的「指令碼工作」和「指令碼元件」指令碼,可能無法升級或無法在未安裝 Management Studio 或 SQL Server Data Tools (SSDT) 的電腦上執行。 為了升級這些指令碼工作或指令碼元件指令碼,建議您移除 ADODB.dll 的相依性。 建議以 Ado.Net 來替代 Managed 程式碼 (例如 VB 和 C# 指令碼)。
外部資源
msdn.microsoft.com 上的技術文章:5 Tips for a Smooth SSIS Upgrade to SQL Server 2012 (將 SSIS 順利升級至 SQL Server 2012 的 5 個秘訣)。
blogs.msdn.com 上的部落格文章: 在 Denali 中製作現有的自訂 SSIS 延伸模組和應用程式工作。
channel9.msdn.com 上的網路廣播:Upgrading SSIS Packages to SQL Server 2012 (將 SSIS 套件升級至 SQL Server 2012)。