升級 Integration Services 封裝Upgrade Integration Services Packages

當您升級的執行個體SQL Server 2005SQL Server 2005SQL Server 2008SQL Server 2008目前版本的[SQL Server]SQL Server,現有SQL Server 2008 Integration Services (SSIS)SQL Server 2008 Integration Services (SSIS)封裝並不會自動升級成目前版本的封裝格式[SQL Server]SQL Server Integration ServicesIntegration Services會使用。When you upgrade an instance of SQL Server 2005SQL Server 2005 or SQL Server 2008SQL Server 2008 to the current release of [SQL Server]SQL Server, your existing SQL Server 2008 Integration Services (SSIS)SQL Server 2008 Integration Services (SSIS) packages are not automatically upgraded to the package format that the current release [SQL Server]SQL ServerIntegration ServicesIntegration Services uses. 您必須選取升級方法並手動升級您的封裝。You will have to select an upgrade method and manually upgrade your packages.

當您升級 SQL Server 2005SQL Server 2005 套件時,Integration ServicesIntegration Services 會將任何指令碼工作和指令碼元件中的指令碼移轉到 MicrosoftMicrosoft Visual StudioVisual Studio Tools for Applications (VSTA)。When you upgrade a SQL Server 2005SQL Server 2005 package, Integration ServicesIntegration Services migrates the scripts in any Script task and Script component to MicrosoftMicrosoft Visual StudioVisual Studio Tools for Applications (VSTA). SQL Server 2005SQL Server 2005 中,指令碼工作或指令碼元件中的指令碼會使用 MicrosoftMicrosoft Visual StudioVisual Studio for Applications (VSA)。In SQL Server 2005SQL Server 2005, the scripts in Script tasks or Script components used MicrosoftMicrosoft Visual StudioVisual Studio for Applications (VSA). 如需您可能必須在移轉之前對指令碼進行的變更以及指令碼轉換失敗的詳細資訊,請參閱將指令碼移轉到 VSTAFor more information about changes that you might have to make to the scripts before migration and about script conversion failure, see Migrate Scripts to VSTA.

如需將專案轉換為專案部署模型時升級封裝的相關資訊,請參閱將專案部署至 Integration Services 伺服器For information on upgrading packages when you convert a project to the project deployment model, see Deploy Projects to Integration Services Server.

SQL Server 2000 Data Transformation Services 封裝SQL Server 2000 Data Transformation Services Packages

在目前的版本中,已停用針對移轉或執行 Data Transformation Services (DTS) 封裝的支援[SQL Server]SQL Server Integration ServicesIntegration ServicesSupport for migrating or running Data Transformation Services (DTS) packages has been discontinued in the current release of [SQL Server]SQL ServerIntegration ServicesIntegration Services. 下列 DTS 功能已停用:The following DTS functionality has been discontinued.

  • DTS 執行階段DTS runtime

  • DTS APIDTS API

  • 可將 DTS 封裝移轉到下一版 Integration ServicesIntegration ServicesPackage Migration Wizard for migrating DTS packages to the next version of Integration ServicesIntegration Services

  • DTS 封裝維護的支援 Transact-SQLSQL Server Management StudioSupport for DTS package maintenance in Transact-SQLSQL Server Management Studio

  • 執行 DTS 2000 封裝工作Execute DTS 2000 Package task

  • DTS 封包的 Upgrade Advisor 掃描。Upgrade Advisor scan of DTS packages.

下列選項可用於移轉 DTS 封裝。The following options are available for migrating DTS packages.

  • 將封裝移轉到 SQL Server 2005 Integration Services (SSIS)SQL Server 2005 Integration Services (SSIS)SQL Server 2008 Integration Services (SSIS)SQL Server 2008 Integration Services (SSIS),然後再將封裝升級到 SQL Server 2012 Integration Services (SSIS)SQL Server 2012 Integration Services (SSIS)Migrate the packages to SQL Server 2005 Integration Services (SSIS)SQL Server 2005 Integration Services (SSIS) or SQL Server 2008 Integration Services (SSIS)SQL Server 2008 Integration Services (SSIS), and then upgrade the packages to SQL Server 2012 Integration Services (SSIS)SQL Server 2012 Integration Services (SSIS).

    如需將 DTS 套件移轉到 SQL Server 2005 Integration Services (SSIS)SQL Server 2005 Integration Services (SSIS)SQL Server 2008 Integration Services (SSIS)SQL Server 2008 Integration Services (SSIS) 的相關資訊,請參閱移轉 Data Transformation Services 封裝 (2005) 和移轉 Data Transformation Services 封裝 (2008)。For information about migrating DTS packages to SQL Server 2005 Integration Services (SSIS)SQL Server 2005 Integration Services (SSIS) and SQL Server 2008 Integration Services (SSIS)SQL Server 2008 Integration Services (SSIS), see Migrating Data Transformation Services Packages (2005) and Migrating Data Transformation Services Packages (2008).

  • 使用 SQL Server 2012 Integration Services (SSIS)SQL Server 2012 Integration Services (SSIS) 重新建立 DTS 封裝。Recreate the DTS packages by using SQL Server 2012 Integration Services (SSIS)SQL Server 2012 Integration Services (SSIS).

    如需 SQL Server 2012 Integration Services (SSIS)SQL Server 2012 Integration Services (SSIS) 中新功能的相關資訊,請參閱 新功能 (Integration Services)For information about the new features in SQL Server 2012 Integration Services (SSIS)SQL Server 2012 Integration Services (SSIS), see What's New (Integration Services). 如需 Integration ServicesIntegration Services 套件之結構的概觀,請參閱 Integration Services (SSIS) 套件For an overview of the structure of Integration ServicesIntegration Services packages, see Integration Services (SSIS) Packages.

選取升級方法Selecting an Upgrade Method

您可以使用各種方法來升級 SQL Server 2005SQL Server 2005SQL Server 2008SQL Server 2008 套件。You can use various methods to upgrade SQL Server 2005SQL Server 2005 and SQL Server 2008SQL Server 2008 packages. 對於其中某些方法而言,升級只是暫時性。For some of these methods, the upgrade is only temporary. 對於其他方法而言,升級則是永久性。For others, the upgrade is permanent. 下表將描述每種方法以及升級是暫時性或永久性。The following table describes each of these methods and whether the upgrade is temporary or permanent.

注意

當您使用隨目前之 [SQL Server]SQL Server 版本安裝的 dtexec 公用程式 (dtexec.exe) 執行 SQL Server 2005SQL Server 2005SQL Server 2008SQL Server 2008 套件時,暫時套件升級將會拉長執行的時間。When you run a SQL Server 2005SQL Server 2005 or SQL Server 2008SQL Server 2008 package using the dtexec utility (dtexec.exe) that is installed with the current release of [SQL Server]SQL Server, the temporary package upgrade increases the execution time. 所增加的封裝執行時間長短,取決於封裝的大小。The rate of increase in package execution time varies depending on the size of the package. 如要避免執行時間增加,建議您在執行前先升級封裝。To avoid an increase in the execution time, it is recommended that you upgrade the package before running it.

升級方法Upgrade Method 升級的類型Type of Upgrade
使用隨目前 [SQL Server]SQL Server 版本安裝的 dtexec 公用程式 (dtexec.exe) 執行 SQL Server 2005SQL Server 2005SQL Server 2008SQL Server 2008 套件。Use the dtexec utility (dtexec.exe) that is installed with the current release of [SQL Server]SQL Server to run a SQL Server 2005SQL Server 2005 or SQL Server 2008SQL Server 2008 package.

如需詳細資訊,請參閱 dtexec UtilityFor more information, see dtexec Utility.
封裝升級是暫時性的。The package upgrade is temporary. 針對 SQL Server 2005SQL Server 2005,指令碼移轉是暫時性的。For a SQL Server 2005SQL Server 2005 package, the script migration is temporary.

這些變更無法儲存。The changes cannot be saved.
SQL Server 2005SQL Server 2005 中,開啟 SQL Server 2008SQL Server 2008SQL Server Data Tools (SSDT )SQL Server Data Tools (SSDT) 封裝檔案。Open a SQL Server 2005SQL Server 2005 or SQL Server 2008SQL Server 2008 package file in SQL Server Data Tools (SSDT )SQL Server Data Tools (SSDT). 如果您儲存了封裝,封裝升級就是永久性。不過,如果您沒有儲存封裝,封裝升級就是暫時性。The package upgrade is permanent if you save the package; otherwise, it is temporary if you do not save the package.

針對 SQL Server 2005SQL Server 2005 封裝,如果您儲存了封裝,指令碼移轉就是永久性。不過,如果您沒有儲存封裝,指令碼移轉就是暫時性。For a SQL Server 2005SQL Server 2005 package, the script migration is permanent if you save the package; otherwise, it is temporary if you do not save the package.
SQL Server 2005SQL Server 2005 的現有專案中加入 SQL Server 2008SQL Server 2008SQL Server Data Tools (SSDT )SQL Server Data Tools (SSDT) 封裝。Add a SQL Server 2005SQL Server 2005 or SQL Server 2008SQL Server 2008 package to an existing project in SQL Server Data Tools (SSDT )SQL Server Data Tools (SSDT). 封裝升級是永久性的。The package upgrade is permanent. 針對 SQL Server 2005SQL Server 2005 封裝,指令碼移轉是永久性的。For a SQL Server 2005SQL Server 2005 package, the script migration is permanent.
開啟 SQL Server 2005 Integration Services (SSIS)SQL Server 2005 Integration Services (SSIS) 中的 SQL Server 2008 Integration Services (SSIS)SQL Server 2008 Integration Services (SSIS)Visual StudioVisual Studio 專案檔案,然後使用 [SSISSSIS 封裝升級精靈] 升級專案中的多個封裝。Open a SQL Server 2005 Integration Services (SSIS)SQL Server 2005 Integration Services (SSIS) or SQL Server 2008 Integration Services (SSIS)SQL Server 2008 Integration Services (SSIS) project file in Visual StudioVisual Studio, and then use the SSISSSIS Package Upgrade Wizard to upgrade multiple packages in the project.

如需詳細資訊,請參閱使用 SSIS 封裝升級精靈來升級 Integration Services 封裝SSIS 封裝升級精靈 F1 說明For more information, see Upgrade Integration Services Packages Using the SSIS Package Upgrade Wizard and SSIS Package Upgrade Wizard F1 Help.
封裝升級是永久性的。The package upgrade is permanent. 針對 SQL Server 2005SQL Server 2005 封裝,指令碼移轉是永久性的。For a SQL Server 2005SQL Server 2005 package, the script migration is permanent.
使用隨目前 Upgrade 方法來升級一或多個 Integration ServicesIntegration Services 封裝。Use the Upgrade method to upgrade one or more Integration ServicesIntegration Services packages. 封裝升級是永久性的。The package upgrade is permanent. 針對 SQL Server 2005SQL Server 2005 封裝,指令碼移轉是永久性的。For a SQL Server 2005SQL Server 2005 package, the script migration is permanent.

自訂應用程式和自訂元件Custom Applications and Custom Components

SQL Server 2005 Integration Services (SSIS)SQL Server 2005 Integration Services (SSIS) 自訂元件無法搭配目前的 [SQL Server]SQL ServerIntegration ServicesIntegration Services版本使用。custom components will not work with the current release of [SQL Server]SQL ServerIntegration ServicesIntegration Services.

您可以使用目前的 [SQL Server]SQL ServerIntegration ServicesIntegration Services 版本工具執行及管理內含 SQL Server 2008SQL Server 2008SQL Server 2008 R2SQL Server 2008 R2SSISSSIS 自訂元件的封裝。You can use the current release of [SQL Server]SQL ServerIntegration ServicesIntegration Services tools to run and manage packages that include SQL Server 2008SQL Server 2008 and SQL Server 2008 R2SQL Server 2008 R2SSISSSIS custom components. 我們在下列檔案中加入四個繫結重新導向規則,協助將執行階段元件從 10.0.0.0 版 (SQL Server 2008 R2SQL Server 2008 R2) 重新導向至 11.0.0.0 版 (SQL Server 2014SQL Server 2014)。We added four binding redirection rules to the following files to help redirect the runtime assemblies from version 10.0.0.0 (SQL Server 2008 R2SQL Server 2008 R2) to version 11.0.0.0 (SQL Server 2014SQL Server 2014).

  • DTExec.exe.configDTExec.exe.config

  • dtshost.exe.configdtshost.exe.config

  • DTSWizard.exe.configDTSWizard.exe.config

  • DTUtil.exe.configDTUtil.exe.config

  • DTExecUI.exe.configDTExecUI.exe.config

若要使用SQL Server Data ToolsSQL Server Data Tools為了設計封裝,包括SQL Server 2008SQL Server 2008SQL Server 2008 R2SQL Server 2008 R2自訂元件,您需要修改 devenv.exe.config 檔案則位於 <磁碟機 > : files\Microsoft Visual Studio 10.0\Common7\IDE。To use SQL Server Data ToolsSQL Server Data Tools to design packages that include SQL Server 2008SQL Server 2008 and SQL Server 2008 R2SQL Server 2008 R2 custom components, you need to modify the devenv.exe.config file that is located at <drive>:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE.

如果要使用這些封裝搭配 SQL Server 2014SQL Server 2014版本執行階段所建置的應用程式,必須在可執行檔的 *.exe.config 檔案的組態區段中包含重新導向規則。To use these packages with customer applications that are built with the runtime for SQL Server 2014SQL Server 2014, include redirection rules in the configuration section of the *.exe.config file for the executable. 規則會將執行階段組件重新導向至 11.0.0.0 版 (SQL Server 2014SQL Server 2014)。The rules redirect the runtime assemblies to version 11.0.0.0 (SQL Server 2014SQL Server 2014). 如需組件版本重新導向的詳細資訊,請參閱 <runtime> 的 <assemblyBinding> 元素For more information about assembly version redirection, see <assemblyBinding> Element for <runtime>.

尋找組件Locating the Assemblies

SQL Server 2014SQL Server 2014中, Integration ServicesIntegration Services 組件已經升級至 .NET 4.0。In SQL Server 2014SQL Server 2014, the Integration ServicesIntegration Services assemblies were upgraded to .NET 4.0. .NET 4 有個別的全域組件快取,位於 <磁碟機> :\Windows\Microsoft.NET\assembly。There is a separate global assembly cache for .NET 4, located in <drive>:\Windows\Microsoft.NET\assembly. 您可以在此路徑底下 (通常在 GAC_MSIL 資料夾中) 找到所有 Integration ServicesIntegration Services 組件。You can find all of the Integration ServicesIntegration Services assemblies under this path, usually in the GAC_MSIL folder.

如同舊版 [SQL Server]SQL Server,核心 Integration ServicesIntegration Services 擴充性 .dll 檔案也位於 <磁碟機> :\Program Files\Microsoft SQL Server\100\SDK\Assemblies。As in previous versions of [SQL Server]SQL Server, the core Integration ServicesIntegration Services extensibility .dll files are also located at <drive>:\Program Files\Microsoft SQL Server\100\SDK\Assemblies.

了解 SQL Server 封裝升級結果Understanding SQL Server Package Upgrade Results

升級封裝期間,SQL Server 2005SQL Server 2005SQL Server 2008SQL Server 2008 封裝中的大多數元件及功能皆會順利地轉換成目前 [SQL Server]SQL Server 版本的對應項目。During the package upgrade process, most components and features in SQL Server 2005SQL Server 2005 and SQL Server 2008SQL Server 2008 packages convert seamlessly to their counterparts in the current release of [SQL Server]SQL Server. 不過,其中有許多元件和功能不會升級,或者具有您應該注意的升級結果。However, there are several components and features that either will not be upgraded or have upgrade results of which you should be aware. 下表將識別這些元件和功能。The following table identifies these components and features.

注意

若要識別哪些封裝具有下表所列的問題,請執行 Upgrade Advisor。To identify which packages have the issues listed in this table, run Upgrade Advisor. 如需詳細資訊,請參閱< Use Upgrade Advisor to Prepare for Upgrades>。For more information, see Use Upgrade Advisor to Prepare for Upgrades.

元件或功能Component or Feature 升級結果Upgrade Results
連接字串Connection strings 對於 SQL Server 2005SQL Server 2005SQL Server 2008SQL Server 2008 封裝,某些提供者的名稱已有所變更,需要在連接字串中使用不同的值。For SQL Server 2005SQL Server 2005 and SQL Server 2008SQL Server 2008 packages, the names of certain providers have changed and require different values in the connection strings. 若要更新連接字串,請使用下列其中一個程序:To update the connection strings, use one of the following procedures:

-使用 [SSISSSIS 套件升級精靈] 來升級套件,然後選取 [更新連接字串以使用新的提供者名稱] 選項。-Use the SSISSSIS Package Upgrade Wizard to upgrade the package, and select the Update connection strings to use new provider names option.

SQL Server Data Tools (SSDT )SQL Server Data Tools (SSDT) [選項] 對話方塊的 [一般] 頁面上,選取 [更新連接字串以使用新的提供者名稱] 選項。-In SQL Server Data Tools (SSDT )SQL Server Data Tools (SSDT), on the General page of the Options dialog box, select the Update connection strings to use new provider names option. 如需這個選項的詳細資訊,請參閱一般頁面For more information about this option, see General Page.

-在 SQL Server Data Tools (SSDT )SQL Server Data Tools (SSDT) 中,開啟套件並手動變更 ConnectionString 屬性的文字。-In SQL Server Data Tools (SSDT )SQL Server Data Tools (SSDT), open the package and manually change the text of the ConnectionString property.

注意:您無法使用先前的程序更新連接字串,當連接字串儲存在組態檔或資料來源檔案,或當運算式設定ConnectionString屬性。Note: You cannot use the previous procedures to update a connection string when the connection string is stored in either a configuration file or a data source file, or when an expression sets the ConnectionString property. 在這些情況下,若要更新連接字串,您必須手動更新檔案或運算式。To update the connection string in these cases, you must manually update the file or the expression.

如需資料來源的詳細資訊,請參閱資料來源For more information about data sources, see Data Sources.
查閱轉換Lookup transformation 對於 SQL Server 2005SQL Server 2005 封裝,升級程序會自動將查閱轉換升級為目前的 [SQL Server]SQL ServerIntegration ServicesIntegration Services 版本。For SQL Server 2005SQL Server 2005 packages, the upgrade process automatically upgrades the Lookup transformation to the current release of [SQL Server]SQL ServerIntegration ServicesIntegration Services. 但目前版本中的此元件另有一些功能可以供您使用。However, the current release of this component has some additional capabilities of which you might want to take advantage.

如需相關資訊,請參閱 Lookup TransformationFor more information, see Lookup Transformation.
指令碼工作和指令碼元件Script task and Script component 針對 SQL Server 2005SQL Server 2005 封裝,升級程序會自動將指令碼工作和指令碼元件中的指令碼,從 VSA 移轉到 VSTA。For SQL Server 2005SQL Server 2005 packages, the upgrade process automatically migrates scripts in the Script task and Script component from VSA to VSTA.

如需您可能必須在移轉之前對指令碼進行的變更以及指令碼轉換失敗的詳細資訊,請參閱將指令碼移轉到 VSTAFor more information about changes that you might have to make to the scripts before migration and about script conversion failure, see Migrate Scripts to VSTA.

以 ADODB.dll 為基礎的指令碼Scripts that Depend on ADODB.dll

明確參考 ADODB.dll 的指令碼工作和指令碼元件指令碼可能無法升級,或是在未安裝 Transact-SQLSQL Server Management StudioSQL Server Data Tools (SSDT )SQL Server Data Tools (SSDT) 的電腦上執行。Script Task and Script Component scripts that explicitly reference ADODB.dll may not upgrade or run on machines without Transact-SQLSQL Server Management Studio or SQL Server Data Tools (SSDT )SQL Server Data Tools (SSDT) installed. 為了升級這些指令碼工作或指令碼元件指令碼,建議您移除 ADODB.dll 的相依性。In order to upgrade these Script Task or Script Component scripts, it is recommended that you remove the dependency on ADODB.dll. 建議以 Ado.Net 來替代 Managed 程式碼 (例如 VB 和 C# 指令碼)。Ado.Net is the recommended alternative for managed code such as VB and C# scripts.

外部資源External Resources