18.3.1 REST対応SQLサービスについて

REST対応SQLサービス参照を作成して、リモートOracleデータベースに定義されているSQLまたはPL/SQLを実行します。

Oracle REST Data Services (ORDS) 17.3以降を使用するOracle Application Expressのインストールでは、RESTエンドポイントを介して任意のSQLを実行できます。開発者は、共有コンポーネント内の名前、エンドポイントURLおよび認証情報を定義して、REST対応SQL参照を簡単に作成できます。

REST対応SQLサービスはApplication Expressコンポーネント内にワークスペースレベルで格納されるため、ワークスペース内のすべてのアプリケーションで使用できます。REST対応SQLサービスを使用するために、リモート・データベースは、フロントエンドにOracle REST Data Services (ORDS)リリース17.3以上が含まれている必要があり、REST対応SQL機能が有効化されている必要があります。Oracle Application Expressは、RESTを介してSQLまたはPL/SQL問合せをORDSに渡し、自己記述型のJSONレスポンスを返します。JSONオブジェクトには、結果セットのメタデータ、結果データおよびページ区切りの詳細が含まれます。

対話モード・レポート、クラシック・レポート、カレンダ、JETチャート、ツリーおよびPL/SQLプロセスではREST対応SQL参照を利用できますが、対話グリッド・リージョンでは利用できません。参照は、カレンダ、JETチャート、ツリーおよびPL/SQLプロセスとともに使用することもできます。

注意:

REST対応SQL参照では、対話グリッドがサポートされません。

REST対応SQLサービス参照とデータベース・リンクの違い

REST対応SQLサービスとデータベース・リンクは、両方とも開発者によるデータへのリモート・アクセスを可能にします。ただし、これらの機能はリモート・データにアクセスする方法が異なります。データベース・リンクとREST対応SQLサービスの主な違いは次のとおりです。

  • データベース・リンク:

    • 開発者が同じSQL問合せでリモート表とローカル表を使用できるようにSQLレベルで機能します。

    • SQL*Net上で動作するため、インターネット上でクラウド・インスタンスに接続する場合は、問題が発生することがあります。

  • REST対応SQLサービス:

    • ワークスペースレベルで機能します。開発者は、REST対応SQLサービスの問合せを含むApplication Expressコンポーネントを作成できますが、ローカル表に結合することはできません。

    • クラウド環境で、またはインターネット上で使用しやすいようにJSON over HTTP(s)と連動します。

データベース・リンクおよびREST対応SQLの両方がローカル・データベース内の表からデータをフェッチするよりはるかに非効率なネットワークを介してデータをフェッチします。環境に最適な方法を評価する際に、ページ・ビュー・パフォーマンスへの影響を評価し、適切なリフレッシュ・アルゴリズムを使用して常にローカル表でリモート・データをレプリケートすることを検討してください。

REST対応SQLサービスのエクスポートおよびインポート

アプリケーションをエクスポートすると、使用されるREST対応SQL参照が、エクスポート・ファイルに追加されます。アプリケーションをエクスポートして別のワークスペースにインポートする場合は、Application Expressによって、ターゲット・ワークスペースに同じ静的IDのREST対応SQL参照がすでに含まれているかどうかが確認されます。REST対応SQL参照がすでに存在している場合、アプリケーションは、既存の参照を使用します。参照が存在しない場合は、ターゲット・ワークスペースに作成されます。