AWS SCT での C++ アプリケーションの SQL コードの変換には - AWS Schema Conversion Tool

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS SCT での C++ アプリケーションの SQL コードの変換には

Oracle から PostgreSQL への変換では、AWS SCT を使用して C++ アプリケーションに埋め込まれた SQL コードを変換できます。この特定の C++ アプリケーションコンバータはアプリケーションロジックを理解します。関数、パラメータ、ローカル変数など、さまざまなアプリケーションオブジェクトにあるステートメントを収集します。

このような詳細な分析により、C++ アプリケーション SQL コードコンバータの方が汎用コンバータよりも優れた変換結果が得られます。

AWS SCT での C++ アプリケーション変換プロジェクトの作成

C++ アプリケーション変換プロジェクトは、Oracle データベーススキーマを PostgreSQL データベーススキーマに変換する場合にのみ作成できます。必ず、ソース Oracle スキーマとターゲット PostgreSQL データベースを含むマッピングルールをプロジェクトに追加してください。詳細については、「AWS SCT でのマッピングルールの作成」を参照してください。

1 つの AWS SCT プロジェクトに複数のアプリケーション変換プロジェクトを追加できます。

C++ アプリケーション変換プロジェクトを作成するには
  1. データベース変換プロジェクトを作成し、ソース Oracle データベースを追加します。詳細については、「AWS SCT プロジェクトの作成」および「AWS SCT プロジェクトへのデータベースサーバーの追加」を参照してください。

  2. ソース Oracle データベースとターゲット PostgreSQL データベースを含むマッピングルールを追加します。マッピングルールでターゲット PostgreSQL データベースを追加するか、仮想 PostgreSQL ターゲットデータベースプラットフォームを使用できます。詳細については、「AWS SCT でのマッピングルールの作成」および「仮想ターゲットの使用」を参照してください。

  3. [ビュー] メニューで、[メインビュー] を選択します。

  4. [アプリケーション] メニュー で、[新しい C++ アプリケーション] を選択します。

    [C++ アプリケーション変換プロジェクトの作成] ダイアログボックスが表示されます。

    
                            [新しいアプリケーション変換プロジェクト] ダイアログボックス
  5. [名前] に、C++ アプリケーション変換プロジェクトの名前を入力します。それぞれのデータベーススキーマ変換プロジェクトごとに 1 つ以上の子アプリケーション変換プロジェクトを作成できるため、後で複数のプロジェクトを追加する場合を考慮した名前を選択します。

  6. アプリケーションのソースコードの [場所] を入力します。

  7. ソースツリーで、アプリケーションによって使用されるスキーマを選択します。このスキーマが、マッピングルールに含まれていることを確認してください。AWS SCT で、マッピングルールに含まれるスキーマが強調表示されます。

  8. [OK] を選択して、C++ アプリケーション変換プロジェクトを作成します。

  9. 左パネルの [アプリケーション] ノードで C++ アプリケーション変換プロジェクトを探します。

AWS SCT で、C++ アプリケーションの SQL コードを次のように変換します。

C++ AWS SCT アプリケーションをプロジェクトに追加したら、このアプリケーションの SQL コードをターゲットデータベースプラットフォームと互換性のある形式に変換します。以下の手順で、AWS SCT で C++ アプリケーションに埋め込まれている SQL コードを分析して変換します。

SQL コードを変換するには
  1. 左パネルの [アプリケーション] の下の [C++] ノードを展開し、変換するアプリケーションを選択します。

  2. ソース Oracle アプリケーションプロジェクトで、[設定] を選択します。選択した C++ アプリケーションの変換設定を確認して編集します。AWS SCT プロジェクトに追加したすべての C++ アプリケーションの変換設定を指定することもできます。詳細については、「C++ アプリケーション変換プロジェクトの管理」を参照してください。

  3. [コンパイラタイプ] では、C++ アプリケーションのソースコードに使用するコンパイラを選択します。AWS SCT は、Microsoft Visual C++GCC、GNU コンパイラコレクションClang の C++ コンパイラをサポートしています。デフォルトオプションは [Microsoft Visual C++] です。

  4. ユーザー定義マクロの場合は、C++ プロジェクトのユーザー定義マクロを含むファイルへのパスを入力します。このファイルの構造が、#define name value であることを確認します。前の例では、value はオプションのパラメータです。このオプションのパラメータのデフォルト値は 1 です。

    このファイルを作成するには、Microsoft Visual Studio でプロジェクトを開き、[プロジェクト]、[プロパティ]、[C/C++]、および [プリプロセッサ] を選択します。プリプロセッサ定義の場合は、[編集] を選択し、名前と値を新しいテキストファイルにコピーします。次に、ファイル内の各文字列に、プレフィックス #define を追加します。

  5. 外部インクルードディレクトリには、C++ プロジェクトで使用する外部ライブラリを含むフォルダへのパスを入力します。

  6. 左側のペインで変換するアプリケーションを選択し、コンテキスト (右クリック) メニューを開きます。

  7. [変換] を選択します。 AWS SCT はソースコードファイルを分析し、アプリケーションロジックを決定し、コードメタデータをプロジェクトに読み込みます。このコードメタデータには、C++ クラス、オブジェクト、メソッド、グローバル変数、インターフェイスなどが含まれます。

    ターゲットデータベースパネルで、AWS SCT はソースアプリケーションプロジェクトと同様のフォルダ構造を作成します。ここでは、次に示すように、変換されたアプリケーションコードを確認できます。

    
                        分析する SQL コード
  8. 変換したアプリケーションコードを保存します。詳細については、「変換されたアプリケーションコードを保存する」を参照してください。

変換したアプリケーションコードを AWS SCT で保存します。

次の手順に従って、変換されたアプリケーションコードを保存します。

変換されたアプリケーションコードを保存するには
  1. ターゲットデータベースパネルの[アプリケーション] の下にある [C++] ノードを展開します。

  2. 変換したアプリケーションを選択し、[保存] を選択します。

  3. 変換したアプリケーションコードを保存するフォルダへのパスを入力し、[フォルダを選択] を選択します。

AWS SCT での C++ アプリケーション変換プロジェクトの管理

複数の C++ アプリケーション変換プロジェクトを追加したり、変換設定を編集したり、C++ アプリケーションコードを更新したり、AWS SCT プロジェクトから C++ 変換プロジェクトを削除したりできます。

C++ アプリケーション変換プロジェクトを追加するには
  1. 左パネルの [アプリケーション] ノードを展開します。

  2. [C++] ノードを選択して、コンテキスト (右クリック) メニューを開きます。

  3. [新しいアプリケーション] を選択します。

  4. 新しい C++ アプリケーション変換プロジェクトを作成するのに必要な情報を入力します。詳細については、「C++ アプリケーション変換プロジェクトの作成」を参照してください。

AWS SCT プロジェクト内のすべての C++ アプリケーション変換プロジェクトの変換設定を指定できます。

すべての C++ アプリケーションの変換設定を編集するには
  1. [設定] メニューで [プロジェクト設定] を選択し、[アプリケーション変換] を選択します。

  2. [コンパイラタイプ] では、C++ アプリケーションのソースコードに使用するコンパイラを選択します。 AWS SCT は、Microsoft Visual C++GCC、GNU コンパイラコレクションClang の C++ コンパイラをサポートしています。デフォルトオプションは [Microsoft Visual C++] です。

  3. ユーザー定義マクロの場合は、C++ プロジェクトのユーザー定義マクロを含むファイルへのパスを入力します。このファイルの構造が、#define name value であることを確認します。前の例では、value はオプションのパラメータです。このオプションのパラメータのデフォルト値は 1 です。

    このファイルを作成するには、Microsoft Visual Studio でプロジェクトを開き、[プロジェクト]、[プロパティ]、[C/C++]、および [プリプロセッサ] を選択します。プリプロセッサ定義の場合は、[編集] を選択し、名前と値を新しいテキストファイルにコピーします。次に、ファイル内の各文字列に、プレフィックス #define を追加します。

  4. 外部インクルードディレクトリには、C++ プロジェクトで使用する外部ライブラリを含むフォルダへのパスを入力します。

  5. [OK] を選択してプロジェクト設定を保存し、ウィンドウを閉じます。

または、C++ アプリケーション変換プロジェクトごとに変換設定を指定することもできます。詳細については、「C++ アプリケーションの SQL コードの変換」を参照してください。

ソースアプリケーションコードに変更を加えたら、それを AWS SCT プロジェクトにアップロードします。

アプリケーションコードを更新するには
  1. 左パネルの [アプリケーション] の下の [C++] ノードを展開します。

  2. 更新するアプリケーションを選択し、コンテキスト (右クリック) メニューを開きます。

  3. [更新] を選択し、[はい] を選択します。

    AWS SCT は、ソースファイルからアプリケーションコードをアップロードし、変換結果を削除します。AWS SCT で行ったコード変更と変換結果を保持するには、新しい C++ 変換プロジェクトを作成します。

    また、AWS SCT で選択したアプリケーションに指定したアプリケーション変換設定も削除されます。更新したアプリケーションコードをアップロードすると、AWS SCT はプロジェクト設定のデフォルト値を適用します。

C++ アプリケーション変換プロジェクトを作成するには
  1. 左パネルの [アプリケーション] の下の [C++] ノードを展開します。

  2. 削除するアプリケーションを選択し、コンテキスト (右クリック) メニューを開きます。

  3. [削除] を選択し、[OK] を選択します。

AWS SCT での C++ アプリケーション変換評価レポートの作成

C++ アプリケーション変換評価レポートには、C++ アプリケーションに埋め込まれている SQL コードをターゲットデータベースと互換性のある形式に変換する方法に関する情報が記載されています。評価レポートには、すべての SQL 実行ポイントとすべてのソースコードファイルの変換詳細が記載されています。評価レポートには、AWS SCT で変換できない SQL コードのアクションアイテムも含まれています。

C++ アプリケーション変換評価レポートを作成するには
  1. 左パネルの [アプリケーション] の下の [C++] ノードを展開します。

  2. 変換するアプリケーションを選択し、コンテキスト (右クリック) メニューを開きます。

  3. [変換] を選択します。

  4. [ビュー] メニューで [評価レポートビュー] を選択します。

  5. [概要] タブを表示します。

    以下に示す [概要] タブには、アプリケーション評価レポートの要約が表示されます。すべての SQL 実行ポイントとすべてのソースコードファイルの変換結果が表示されます。

  6. Java アプリケーションから抽出した SQL コードを JSON ファイルとして保存するには、[ステートメントを JSON に保存] を選択します。

  7. (オプション) レポートのローカル コピーを PDF ファイルまたはカンマ区切り値 (CSV) ファイルとして保存します。

    • 右上の [PDF に保存] を選択して、レポートを PDF ファイルとして保存します。

      PDF ファイルには、エグゼクティブサマリー、アクション項目、アプリケーション変換に関する推奨事項が含まれています。

    • 右上の [CSV に保存] を選択して、レポートを CSV ファイルとして保存します。

      CSV ファイルには、アクションアイテム、推奨アクション、および SQL コードの変換に必要な推定手作業の複雑さが含まれています。