接続を作成して 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 データベース内のテーブルからアプリを作成する
Power Apps に移動します。
左側のウィンドウで [ 作成 ] を選択します。
[ 開始元] で、[ その他のデータ ソース] を選択します。
新規接続 を選択します。
接続の一覧で、[ Oracle データベース] を選択します。
Oracle サーバーの名前、ユーザー名、およびパスワードを指定します。
SID が必要な場合は、次の形式でサーバーを指定します。
ServerName/SID
使用するゲートウェイを選択するか、ゲートウェイをインストールします。
ゲートウェイをインストールした後にゲートウェイが表示されない場合は、[ ゲートウェイの一覧の更新] を選択します。
[ 作成] を選択して接続を作成します。
既定のデータセットを選択します。
テーブルの一覧で、使用するテーブルを選択します。
[ 接続 ] を選択してアプリを作成します。
する
Power Apps では、次の 3 つの画面を含むアプリが作成され、選択したテーブルのデータが表示されます。
- BrowseScreen1。テーブル内のすべてのエントリが一覧表示されます。
- DetailScreen1。1 つのエントリに関する詳細情報を提供します。
- EditScreen1。ユーザーがエントリを更新したり、エントリを作成したりできます。
次のステップ
- 生成したアプリを保存するには、Ctrl キーを押しながら S キーを押します。
- BrowseScreen1 (既定で表示される) をカスタマイズするには、「レイアウトのカスタマイズ」を参照してください。
- DetailsScreen1 または EditScreen1 をカスタマイズするには、「フォームのカスタマイズ」を参照してください。
既知の問題、ヒント、トラブルシューティング
ゲートウェイに到達できません。
このエラーは、オンプレミス データ ゲートウェイがクラウドに接続できない場合に表示されます。 ゲートウェイの状態を確認するには、powerapps.microsoft.com にサインインし、[ ゲートウェイ] を選択して、使用するゲートウェイを選択します。
ゲートウェイが実行されていて、インターネットに接続できることを確認します。 電源がオフになっているか、スリープ状態になっている可能性があるコンピューターにゲートウェイをインストールしないでください。 また、オンプレミス データ ゲートウェイ サービス (PBIEgwService) を再起動してみてください。
System.Data.OracleClient には、Oracle クライアント ソフトウェア バージョン 8.1.7 以降が必要です。
このエラーは、Oracle クライアント SDK がオンプレミス データ ゲートウェイと同じコンピューターにインストールされていない場合に表示されます。 この問題を解決するには、 公式プロバイダーをインストールします。
テーブル '[Tablename]' では、キー列は定義されません。
このエラーは、Oracle Database 接続に必要な主キーがないテーブルに接続している場合に表示されます。
ストアド プロシージャ、複合キーを持つテーブル、およびテーブル内の入れ子になったオブジェクト型は、Power Apps では直接サポートされていません。 ただし、Power Automate を使用するストアド プロシージャはサポートされています。
環境間のスキーマ名の依存関係。
Power Apps をオンプレミスの Oracle データ ソースに接続すると、スキーマ プレフィックスはテーブル名の一部として扱われます。 つまり、スキーマ名は、開発、運用前、運用など、すべての環境でまったく同じである必要があります。 各環境で異なる Oracle ユーザー名またはスキーマを使用する場合、接続参照を正しく更新しても、デプロイ中にアプリがテーブルを見つけられない可能性があります。 これにより、 Entity Not Found エラーが発生します。
この制限は仕様です。Power Apps では現在、環境変数を使用した動的なスキーマ名の置換はサポートされていません。 デプロイの失敗を防ぐには、すべての環境で同じ Oracle スキーマ名を使用する必要があります。 または、Power Automate フローや Dataverse 仮想エンティティなどのソリューションを検討することもできます。このソリューションにより、環境固有の構成をより柔軟に管理できます。