AWS SCT を使用した Pro*C アプリケーションの SQL コードの変換 - AWS Schema Conversion Tool

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

AWS SCT を使用した Pro*C アプリケーションの SQL コードの変換

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

この詳細な分析により、Pro*C アプリケーション SQL コード コンバータは、汎用コンバータと比較して優れた変換結果を提供します。

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

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

1 つの AWS SCT プロジェクトに複数のアプリケーション変換プロジェクトを追加できます。以下の手順を使用して、Pro*C アプリケーション変換プロジェクトを作成します。

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

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

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

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

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

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

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

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

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

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

AWS SCT での Pro*C アプリケーションの SQL コードの変換

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

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

  2. 変換するアプリケーションを選択し、[設定] を選択します。

    1. [グローバルヘッダーファイルパス] には、アプリケーションプロジェクトが使用するヘッダーファイルへのパスを入力します。

    2. [未解決のホスト変数をすべて解釈する] を選択すると、変換されたコード内の未解決変数がすべて表示されます。

    3. 変換された SQL コードで拡張パック関数を使用するには、拡張パックの [固定幅文字列変換関数を使用] を選択します。AWS SCT は、拡張パックファイルをアプリケーションプロジェクトに含めます。

    4. [匿名 PL/SQL ブロックをスタンドアロン SQL 呼び出しまたはストアド関数に変換] を選択すると、ターゲットデータベースにすべての匿名 PL/SQL ブロック用のストアドプロシージャが作成されます。 次に、AWS SCT はこれらのストアドプロシージャの実行を変換後のアプリケーションコードに含めます。

    5. Oracle データベースカーソルの変換を改善するには、[カスタムカーソルフローを使用] を選択します。

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

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

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

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

AWS SCT で変換されたアプリケーションコードの編集と保存

変換された SQL ステートメントを編集し、AWS SCT を使用してこの編集したコードを、変換された Pro*C アプリケーションコードに埋め込むことができます。次の手順に従って、変換された SQL コードを編集します。

変換された SQL コードを編集するには
  1. 左パネルの [アプリケーション] の [Pro*C] ノードを展開します。

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

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

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

  5. 抽出した SQL コードを保存する CSV ファイルの名前を入力し、[保存] を選択します。

  6. 抽出した SQL コードを編集します。

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

  8. ターゲットデータベースパネルの [アプリケーション] の下にある [Pro*C] ノードを展開します。

  9. 変換したアプリケーションを選択し、コンテキスト (右クリック) メニューを開き、[CSV からステートメントをインポート] を選択します。

  10. [はい] を選択し、編集した SQL コードを含むファイルを選択して [開く] を選択します。

AWS SCT は、変換された SQL ステートメントを複数の部分に分割し、ソースアプリケーションコードの適切なオブジェクトに配置します。次の手順に従って、変換されたアプリケーションコードを保存します。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

AWS SCT で Pro*C アプリケーション変換評価レポートを作成します。

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

以下の手順を使用して、Pro*C アプリケーション変換評価レポートを作成します。

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

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

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

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

  5. [概要] タブを確認します。

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

    Pro*C アプリケーション評価レポートの [概要] タブ
  6. Pro*C アプリケーションから抽出した SQL コードを、カンマ区切り値 (CSV) ファイルとして保存するには、[ステートメントを CSV に保存] を選択します。

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

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

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

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

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