Oracle データベース

まとめ

Item 説明
リリース状態 一般公開
製品 Power BI (データセット)
Power BI (データフロー)
Power Apps (データフロー)
Excel
Dynamics 365 Customer Insights
Analysis Services
サポートされている認証の種類 Windows (デスクトップ/オンライン)
データベース (デスクトップ)
基本 (オンライン)
関数リファレンス ドキュメント Oracle.Database

注意

デプロイ スケジュールにより、またホスト固有の機能があることにより、ある製品に存在する機能が他の製品にはない場合があります。

前提条件

サポートされている Oracle のバージョン:

  • Oracle Server 9 以降
  • Oracle Data Access Client (ODAC) ソフトウェア 11.2 以降

Power Query を使用して Oracle データベースに接続するには、コンピューターに Oracle クライアント ソフトウェア v8.1.7 以降をインストールする必要があります。 32 ビットの Oracle クライアント ソフトウェアをインストールするには、「32-bit Oracle Data Access Components (ODAC) with Oracle Developer Tools for Visual Studio (12.1.0.2.4)」にアクセスしてください。 64 ビットの Oracle クライアントをインストールするには、「64-bit ODAC 12c Release 4 (12.1.0.2.4) Xcopy for Windows x64」アクセスしてください。

注意

お使いの Oracle サーバーと互換性のある Oracle Data Access Client (ODAC) のバージョンを選択します。 たとえば、ODAC 12.x では、必ずしも Oracle Server バージョン 9 をサポートしていません。 Oracle クライアント用の Windows インストーラーを選択します。 Oracle クライアントのセットアップ中に、セットアップ ウィザードの該当するチェック ボックスをオンにすることで、コンピューター全体のレベルで ODP.NET および/または Oracle Providers for ASP.NET の構成 を有効にする必要があります。 Oracle クライアント ウィザードの一部のバージョンでは、既定でチェックボックスがオンになっていますが、他のバージョンではそうなっていません。 Power Query が Oracle データベースに接続できるように、チェックボックスがオンになっていることを確認してください。

オンプレミス データ ゲートウェイを使用して Oracle データベースに接続するには、ゲートウェイを実行しているコンピューター上に適切な Oracle クライアント ソフトウェアをインストールする必要があります。 使用する Oracle クライアント ソフトウェアは、Oracle サーバーのバージョンによって異なりますが、常に 64 ビットのゲートウェイと一致します。 詳細については、「データ ソースの管理 - Oracle」を参照してください。

サポートされる機能

  • インポート
  • DirectQuery
  • [詳細オプション]
    • 分単位のコマンド タイムアウト
    • SQL ステートメント
    • リレーションシップ列を含める
    • 階層全体を使ってナビゲートする

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

接続するには、次の手順を実行します。

  1. コネクタの選択で [Oracle データベース] オプションを選択します。

  2. 接続先の Oracle サーバーを [サーバー] に指定します。 SID が必要な場合、"サーバー名/SID" の形式を使用して指定します。SID はデータベースの一意の名前です。 "サーバー名/SID" の形式で正しく動作しない場合は、"サーバー名/サービス名" を使用します。"サービス名" は接続に使用した別名です。

    Oracle データベースの接続を入力します。

    注意

    ローカル データベースまたは自律データベース接続を使用しているとき、接続エラーを避けるため、サーバー名を引用符で囲む必要がある場合があります。

  3. Power BI Desktop から接続する場合は、 [インポート] または [DirectQuery] のデータ接続モードを選択します。 この例の残りの手順では、データ インポートの接続モードを使用します。 DirectQuery の詳細のついては、「Power BI Desktop で DirectQuery を使用する」にアクセスしてください。

  4. この Oracle データベースに初めて接続する場合は、使用する認証の種類を選択し、資格情報を入力します。 認証の詳細については、「データ ソースを使用した認証」を参照してください。

    Oracle データベースの資格情報を入力します。

  5. [ナビゲーター] で、必要とするデータを選択してから、 [読み込み] を選択してデータを読み込むか、 [データの変換] を選択してデータを変換します。

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

接続するには、次の手順を実行します。

  1. データ ソースの選択で [Oracle データベース] オプションを選択します。

  2. 表示される [Oracle データベース] ダイアログで、接続先の Oracle サーバーを [サーバー] に指定します。 SID が必要な場合、"サーバー名/SID" の形式を使用して指定します。SID はデータベースの一意の名前です。 "サーバー名/SID" の形式で正しく動作しない場合は、"サーバー名/サービス名" を使用します。"サービス名" は接続に使用した別名です。

    Oracle データベースのオンライン接続を入力します。

  3. オンプレミス データ ゲートウェイの名前を選択します。

    注意

    Oracle データベースがローカル ネットワーク上にあるか Web サイト上にあるかに関係なく、このコネクタのオンプレミス データ ゲートウェイを選択する必要があります。

  4. この Oracle データベースに初めて接続する場合は、 [認証の種類] で接続の資格情報の種類を選択します。 Windows 認証ではなく Oracle 内で作成されたアカウントを使用する場合は、 [基本] を選択します。

  5. 資格情報を入力します。

  6. [次へ] を選択して続行します。

  7. [ナビゲーター] で、必要とするデータを選択してから、 [データの変換] を選択して、Power Query エディターでデータを変換します。

詳細オプションを使用して接続する

Power Query Desktop には、必要に応じてクエリに追加できる詳細オプションのセットが用意されています。

Oracle データベース接続のダイアログ ボックスに含まれる詳細オプション。

次の表に、Power Query Desktop で設定できるすべての詳細設定オプションを示します。

詳細オプション 説明
分単位のコマンド タイムアウト 接続が 10 分 (既定のタイムアウト) を超える場合は、別の値を分単位で入力して、より長い時間接続を維持できます。 このオプションは Power Query Desktop でのみ使用できます。
SQL ステートメント 詳細については、「ネイティブ データベース クエリを使用してデータベースからデータをインポートする」を参照してください。
リレーションシップ列を含める オンにした場合は、他のテーブルとのリレーションシップを持つ可能性がある列が含められます。 このボックスをオフにすると、それらの列は表示されません。
階層全体を使ってナビゲートする オンにすると、接続しているデータベース内のテーブルの完全な階層がナビゲーターに表示されます。 オフにすると、ナビゲーターには、列と行にデータが含まれているテーブルのみが表示されます。

必要とする詳細オプションを選択したら、Power Query Desktop で [OK] を選択して、Oracle データベースに接続します。

トラブルシューティング

名前付けの構文が正しくないか適切に構成されていない場合、Oracle で次のエラーが発生する場合があります。

  • ORA-12154: TNS: could not resolve the connect identifier specified (指定された接続識別子を解決できませんでした)。
  • ORA-12514: TNS: listener does not currently know of service requested in connect descriptor (リスナーは接続記述子で要求されたサービスを現在認識していません)。
  • ORA-12541: TNS: no listener (リスナーがありません)。
  • ORA-12170: TNS:Connect timeout occurred (接続のタイムアウトが発生しました)。
  • ORA-12504: TNS: listener was not given the SERVICE_NAME in CONNECT_DATA (リスナーは CONNECT_DATA で SERVICE_NAME を指定されませんでした)。

このようなエラーは、Oracle クライアントがインストールされていないか、正しく構成されていない場合に発生することがあります。 インストールされている場合は、tnsnames.ora ファイルが正しく構成されていることと、正しい net_service_name を使用していることを確認します。 また、Power BI Desktop を使用しているコンピューターとゲートウェイを実行しているコンピューターの間で net_service_name が一致していることも確認する必要があります。 詳細については、「前提条件」を参照してください。

Oracle サーバーのバージョンと Oracle Data Access クライアントのバージョン間で互換性の問題が発生する場合もあります。 一部の組み合わせでは互換性がないため、通常はこれらのバージョンを合わせる必要があります。 たとえば、ODAC 12.x では、Oracle Server バージョン 9 をサポートしていません。

Microsoft Store から Power BI Desktop をダウンロードした場合、Oracle ドライバーの問題により Oracle データベースに接続できない可能性があります。 この問題が発生した場合は、"オブジェクト参照が設定されていません" というエラー メッセージが返されます。 この問題に対処するには、次のいずれかの手順を行ってください。

  • Microsoft Store ではなく、ダウンロード センターから Power BI Desktop をダウンロードします。

  • Microsoft Store から取得したバージョンを使用する場合は、ご利用のローカル コンピューター上で、12.X.X\client_X から 12.X.X\client_X\bin に oraons.dll をコピーします。X はバージョンまたはディレクトリ番号を表します。

Oracle データベースへの接続時に Power BI Gateway に "オブジェクト参照が設定されていません" というエラー メッセージが表示される場合は、「データ ソースの管理 - Oracle」に記載されている手順に従ってください。

Power BI Report Server を使用している場合は、Oracle の接続の種類に関する記事のガイダンスを参照してください。

次のステップ

テーブル列を展開するときに Power Query を最適化する