次の方法で共有


Power Apps から Oracle データベースに接続する

接続を作成して Power Apps でアプリをビルドした後、Oracle データベースでテーブルの一覧表示、テーブル行の作成、読み取り、更新、削除を行います。 Oracle Database 接続では、フィルター処理、並べ替え、その他の関数の完全な委任がサポートされますが、トリガーやストアド プロシージャはサポートされません。

[前提条件]

  • Oracle 9 以降
  • Oracle Data Access Client (ODAC) ソフトウェア 11.2 以降
  • オンプレミス データ ゲートウェイのインストール
  • Oracle クライアント SDK のインストール

オンプレミス データ ゲートウェイをインストールする

ゲートウェイをインストールするには、 このチュートリアルの手順に従います。

オンプレミス データ ゲートウェイはブリッジとして機能し、オンプレミスのデータ (クラウドにないデータ) と Power BI、Power Automate、Logic Apps、Power Apps サービスの間で迅速かつ安全なデータ転送を提供します。 複数のサービスと複数のデータ ソースで同じゲートウェイを使用できます。 詳細については、「 ゲートウェイについて」を参照してください。

Oracle クライアントをインストールする

オンプレミス データ ゲートウェイと同じコンピューターに、ODAC 11.2 以降をインストールします。 たとえば、 Windows x64 用の 64 ビット ODAC 12c リリース 4 (12.1.0.2.4) を インストールしたり、好みのバージョンを選択したりすることができます。 xcopy バージョンはオンプレミス データ ゲートウェイでは機能しないため、Windows インストーラーのバージョンを選択する必要があります。 そうしないと、既知の問題の一覧に記載されているように、接続を作成または使用しようとするとエラーが表示されます。

Oracle データベース内のテーブルからアプリを作成する

  1. Power Apps に移動します。

  2. 左側のウィンドウで [ 作成 ] を選択します。

  3. [ 開始元] で、[ その他のデータ ソース] を選択します。

  4. 新規接続 を選択します。

  5. 接続の一覧で、[ Oracle データベース] を選択します。

    新しいデータベース。

  6. Oracle サーバーの名前、ユーザー名、およびパスワードを指定します。

    SID が必要な場合は、次の形式でサーバーを指定します。
    ServerName/SID

    接続パラメーター。

  7. 使用するゲートウェイを選択するか、ゲートウェイをインストールします。

    ゲートウェイをインストールした後にゲートウェイが表示されない場合は、[ ゲートウェイの一覧の更新] を選択します。

    新しいゲートウェイ。

  8. [ 作成] を選択して接続を作成します。

    接続を作成します。

  9. 既定のデータセットを選択します。

    データセットを選択します。

  10. テーブルの一覧で、使用するテーブルを選択します。

    テーブルを選択します。

  11. [ 接続 ] を選択してアプリを作成します。

    テーブルに接続し、アプリを作成します。する

Power Apps では、次の 3 つの画面を含むアプリが作成され、選択したテーブルのデータが表示されます。

  • BrowseScreen1。テーブル内のすべてのエントリが一覧表示されます。
  • DetailScreen1。1 つのエントリに関する詳細情報を提供します。
  • EditScreen1。ユーザーがエントリを更新したり、エントリを作成したりできます。

異なるアプリ画面。

次のステップ

既知の問題、ヒント、トラブルシューティング

  1. ゲートウェイに到達できません。

    このエラーは、オンプレミス データ ゲートウェイがクラウドに接続できない場合に表示されます。 ゲートウェイの状態を確認するには、powerapps.microsoft.com にサインインし、[ ゲートウェイ] を選択して、使用するゲートウェイを選択します。

    ゲートウェイが実行されていて、インターネットに接続できることを確認します。 電源がオフになっているか、スリープ状態になっている可能性があるコンピューターにゲートウェイをインストールしないでください。 また、オンプレミス データ ゲートウェイ サービス (PBIEgwService) を再起動してみてください。

  2. System.Data.OracleClient には、Oracle クライアント ソフトウェア バージョン 8.1.7 以降が必要です。

    このエラーは、Oracle クライアント SDK がオンプレミス データ ゲートウェイと同じコンピューターにインストールされていない場合に表示されます。 この問題を解決するには、 公式プロバイダーをインストールします

  3. テーブル '[Tablename]' では、キー列は定義されません。

    このエラーは、Oracle Database 接続に必要な主キーがないテーブルに接続している場合に表示されます。

  4. ストアド プロシージャ、複合キーを持つテーブル、およびテーブル内の入れ子になったオブジェクト型は、Power Apps では直接サポートされていません。 ただし、Power Automate を使用するストアド プロシージャはサポートされています。

  5. 環境間のスキーマ名の依存関係。

    Power Apps をオンプレミスの Oracle データ ソースに接続すると、スキーマ プレフィックスはテーブル名の一部として扱われます。 つまり、スキーマ名は、開発、運用前、運用など、すべての環境でまったく同じである必要があります。 各環境で異なる Oracle ユーザー名またはスキーマを使用する場合、接続参照を正しく更新しても、デプロイ中にアプリがテーブルを見つけられない可能性があります。 これにより、 Entity Not Found エラーが発生します。

    この制限は仕様です。Power Apps では現在、環境変数を使用した動的なスキーマ名の置換はサポートされていません。 デプロイの失敗を防ぐには、すべての環境で同じ Oracle スキーマ名を使用する必要があります。 または、Power Automate フローや Dataverse 仮想エンティティなどのソリューションを検討することもできます。このソリューションにより、環境固有の構成をより柔軟に管理できます。