Integration Services パッケージのアップグレード

SQL Server 2005 または SQL Server 2008 のインスタンスを SQL Server の現在のリリースにアップグレードするとき、既存の SQL Server 2008 Integration Services (SSIS) パッケージは、現在のリリースの SQL Server Integration 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 データ変換サービス パッケージ

現在のリリースの SQL Server Integration Services では、データ変換サービス (DTS) パッケージの移行または実行のサポートは廃止されました。 次の DTS 機能は廃止されました。

  • DTS ランタイム

  • DTS API

  • DTS パッケージを次期バージョンの Integration Services 用に移行するためのパッケージ移行ウィザード

  • SQL Server Management Studio における DTS パッケージのメンテナンス機能のサポート

  • DTS 2000 パッケージ実行タスク

  • アップグレード アドバイザーによる DTS パッケージのスキャン

DTS パッケージを移行する場合は、次のオプションがあります。

  • パッケージを SQL Server 2005 Integration Services (SSIS) または SQL Server 2008 Integration Services (SSIS) に移行し、その後でパッケージを SQL Server 2012 Integration Services (SSIS) にアップグレードする。

    SQL Server 2005 Integration Services (SSIS) と SQL Server 2008 Integration Services (SSIS) に DTS パッケージを移行する方法の詳細については、「データ変換サービス パッケージの移行」(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 パッケージは、さまざまな方法でアップグレードできます。 その方法によって、アップグレードが一時的な場合と 永続的な場合があります。 次の表に、それらの各方法とアップグレードが一時的か永続的かを示します。

注意

現在のリリースの SQL Server と共にインストールされる dtexec ユーティリティ (dtexec.exe) を使用して SQL Server 2005 または SQL Server 2008 パッケージを実行すると、一時パッケージのアップグレードが行われることで、実行時間が増加します。 パッケージ実行時間の増加比率は、パッケージのサイズに応じて異なります。 実行時間が増加しないようにするには、パッケージの実行前にアップグレードしておくことをお勧めします。

アップグレード方法

アップグレードの種類

現在のリリースの SQL Server と共にインストールされる dtexec ユーティリティ (dtexec.exe) を使用して、SQL Server 2005 または SQL Server 2008 パッケージを実行します。

詳細については、「dtexec ユーティリティ」を参照してください。

パッケージのアップグレードは一時的です。 SQL Server 2005 パッケージでは、スクリプトの移行は一時的です。

変更を保存することはできません。

SQL Server データ ツール (SSDT) で SQL Server 2005 または SQL Server 2008 パッケージ ファイルを開きます。

パッケージのアップグレードは、パッケージを保存した場合は永続的になり、パッケージを保存しなかった場合は一時的になります。

SQL Server 2005 パッケージでは、スクリプトの移行は、パッケージを保存した場合は永続的になり、パッケージを保存しなかった場合は一時的になります。

SQL Server 2005 または SQL Server 2008 パッケージを SQL Server データ ツール (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 メソッドを使用して、1 つまたは複数の Integration Services パッケージをアップグレードします。

パッケージのアップグレードは永続的です。 SQL Server 2005 パッケージでは、スクリプトの移行は永続的です。

カスタム アプリケーションおよびカスタム コンポーネント

現在のリリースの SQL Server Integration Services では、SQL Server 2005 Integration Services (SSIS) カスタム コンポーネントが動作しません。

現在のリリースの SQL Server Integration Services ツールを使用して、SQL Server 2008 および SQL Server 2008 R2 SSIS カスタム コンポーネントが含まれているパッケージを実行および管理することができます。 ランタイム アセンブリを Version 10.0.0.0 (SQL Server 2008 R2) から Version 11.0.0.0 (SQL Server 2012) にリダイレクトする際に役立つ 4 つのバインド リダイレクト ルールが次のファイルに追加されました。

  • 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 2012 のランタイムで構築された顧客アプリケーションでこれらのパッケージを使用するには、実行可能ファイルに対応する *.exe.config ファイルの configuration セクションにリダイレクト ルールを含めます。 これらのルールにより、ランタイム アセンブリが Version 11.0.0.0 (SQL Server 2012) にリダイレクトされます。 アセンブリ バージョン リダイレクトの詳細については、「<runtime> の <assemblyBinding> 要素」を参照してください。

アセンブリの場所

SQL Server 2012 では、Integration Services アセンブリが .NET 4 にアップグレードされました。 <drive>:\Windows\Microsoft.NET\assembly に、.NET 4 用の別のグローバル アセンブリ キャッシュが用意されています。 すべての Integration Services アセンブリは、通常、このパスの GAC_MSIL フォルダーにあります。

以前のバージョンの SQL Server と同様に、Integration Services のコア機能拡張 .dll ファイルは <drive>:\Program Files\Microsoft SQL Server\100\SDK\Assemblies にあります。

SQL Server パッケージのアップグレード結果について

パッケージのアップグレード プロセス中に、SQL Server 2005 および SQL Server 2008 パッケージ内のほとんどのコンポーネントと機能が、現在のリリースの SQL Server の対応するコンポーネントと機能にシームレスに変換されます。 ただし、いくつかのコンポーネントと機能については、アップグレードされないか、アップグレード結果に注意が必要です。 それらのコンポーネントと機能を次の表に示します。

注意

この表の一覧に示された問題を含むパッケージを識別するには、アップグレード アドバイザーを実行します。 詳細については、「アップグレード アドバイザーを使用したアップグレードの準備」を参照してください。

コンポーネントまたは機能

アップグレード結果

接続文字列

SQL Server 2005 および SQL Server 2008 パッケージでは、特定のプロバイダーの名前が変更されているため、接続文字列の値を変更する必要があります。

接続文字列を更新するには、次のいずれかの手順を実行します。

  • SSIS パッケージ アップグレード ウィザードを使用してパッケージをアップグレードし、[新しいプロバイダー名を使用した接続文字列に更新する] オプションを選択します。

  • SQL Server データ ツール (SSDT) で、[オプション] ダイアログ ボックスの [全般] ページにある [新しいプロバイダー名を使用した接続文字列に更新する] オプションを選択します。 このオプションの詳細については、「[全般] ページ」を参照してください。

  • SQL Server データ ツール (SSDT) でパッケージを開き、ConnectionString プロパティのテキストを手動で変更します。

注意

接続文字列が構成ファイルまたはデータ ソース ファイルに格納されている場合、または式で ConnectionString プロパティを設定する場合は、上記の手順を使用して接続文字列を更新することはできません。 このような場合に接続文字列を更新するには、ファイルまたは式を手動で更新する必要があります。

データ ソースの詳細については、「データ ソース」を参照してください。

参照変換

参照変換は、SQL Server 2005 パッケージのアップグレード プロセスで現在のリリースの SQL Server Integration Services に自動的にアップグレードされます。 ただし、現在のリリースのこのコンポーネントには、それ以外にも利用できる機能がいくつか追加されています。

詳細については、「参照変換」を参照してください。

スクリプト タスクとスクリプト コンポーネント

スクリプト タスクおよびスクリプト コンポーネント内のスクリプトは、SQL Server 2005 パッケージのアップグレード プロセスで VSA から VSTA に自動的に移行されます。

移行前に必要となる可能性があるスクリプトへの変更やスクリプトの変換エラーに関する詳細については、「VSTA へのスクリプトの移行」を参照してください。

ADODB.dll に依存するスクリプト

SQL Server Management Studio または SQL Server データ ツール (SSDT) がインストールされていないコンピューターでは、ADODB.dll を明示的に参照するスクリプト タスクおよびスクリプト コンポーネントのスクリプトをアップグレードしたり、実行したりすることはできません。 このようなスクリプト タスクまたはスクリプト コンポーネントのスクリプトをアップグレードするには、ADODB.dll に対する依存関係を削除することをお勧めします。また、VB や C# のスクリプトなどのマネージ コードの代わりに ADO.NET を使用することをお勧めします。

外部リソース