Oracle データベース

まとめ

Item 説明
リリース状態 一般公開
製品 Excel
Power BI (データセット)
Power BI (データフロー)
Fabric (Dataflow Gen2)
Power Apps (データフロー)
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 (Power BI データセット)
  • [詳細オプション]
    • 分単位のコマンド タイムアウト
    • 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 エディターでデータを変換します。

Oracle 自律データベースへの接続

注意

現時点では、このセクションの手順を使用して、Excel、Power BI Desktop、Power BI サービス、Power Apps から Oracle 自律データベースに接続できます。

Oracle 自律データベースに接続するには、次のアカウントとアプリが必要です。

クライアント資格情報をダウンロードする

Oracle Autonomous データベースへの接続を設定する最初の手順は、クライアント資格情報をダウンロードすることです。

クライアント資格情報をダウンロードするには:

  1. Oracle 自律データベースの詳細ページで、[ DB 接続] を選択します。

    DB 接続

  2. [データベース接続] ページで、[ウォレットのダウンロード] を選択します。

    ウォレットをダウンロードする

  3. このウォレットで使用するパスワードを入力し、パスワードを確認して、[ ダウンロード] を選択します。

    ウォレットのパスワード

Oracle Data Access Components ランタイムをダウンロードしてインストールする

  1. [Oracle Data Access Components Runtime Downloads]\(Oracle データ アクセス コンポーネント ランタイムのダウンロード\) ページに移動します。

  2. 64 ビット バージョンのPower BI Desktopを使用している場合は、64 ビット ODAC OUI の下で、最新バージョンの ODAC インストーラー (現在は 64 ビット ODAC 19.3.1) を選択します。 32 ビット バージョンのPower BI Desktopを使用している場合は、Oracle ページのリンクから 32 ビット バージョンのダウンロード ページに移動します。 Power BI Desktopの 64 ビット バージョンを使用することをお勧めします。 この記事の例では、64 ビット バージョンを使用します。

  3. Oracle 使用許諾契約書を確認して同意し、[ ダウンロード] ODAC1931_x64.zip選択します。

  4. Oracle アカウントにサインインするように求められます。 このアカウントは Oracle Cloud アカウントとは異なる場合があるため、必ず正しいユーザー名とパスワードを入力してください。

    Oracle ODAC OUI zip ファイルは、Windows の既定のダウンロード場所にダウンロードされます。

  5. 既定のダウンロード場所から zip ファイルからファイルを抽出し、任意の便利なフォルダーに配置します。

  6. 管理者モードで Windows コマンド プロンプト (cmd.exe) を開きます。

  7. コマンド プロンプトで、ODAC OUI ファイルを抽出したフォルダーに移動します。

  8. setup.exe を実行します。

  9. [ Oracle Home User の指定] で、[Windows 組み込みアカウントを使用する] を選択します。 [次へ] を選択します。

    [Oracle Home User の指定] ダイアログ ボックスで [Windows 組み込みアカウントを使用する] が選択されている画像。

  10. [ インストール場所の指定] で、Oracle ベース フォルダーの場所を選択します。 [ 参照] を 選択して使用するフォルダーを参照し、[選択] を選択 します[次へ] を選択します。

    ブラウザーが開き、Oracle ベースの新しい場所が一覧表示された画像。

  11. [ 利用可能な製品コンポーネント] で、[ Oracle Data Provider for .NET] のみを選択します。 [次へ] を選択します。

    Oracle Data Provider for .Net が選択されたイメージ。

  12. その後、インストーラーは前提条件のチェックを実行して、システムがインストールと構成の最小要件を満たしていることを確認します。 このチェックが完了したら、[次へ] を選択します。

  13. その後、インストーラーによって、実行されるアクションの概要が表示されます。 続行するには、 [インストール] を選択します。

  14. インストーラーがすべてのドライバー コンポーネントのインストールを完了したら、[ 閉じる] を選択します。

アンマネージド ODP.NET を構成する

  1. コマンド プロンプトで、install-folder>\odp.net\bin\4 に<移動します。 この例では、場所は c:\oracle\driver\odp.net\bin\4 です。

  2. 次のコマンドを入力します。

    OraProvCfg /action:gac /providerpath:"Oracle.DataAccess.dll"

    OraProvCfg /action:config /product:odp /frameworkversion:v4.0.30319 /providerpath:"Oracle.DataAccess.dll"

    コマンド プロンプトが開き、2 つの ODAC コマンドが正常に完了した画像。

環境変数を設定する

  1. Windows の [スタート] メニューの [検索] オプションで [環境変数] を検索し、[システム環境変数の編集] を選択します。

  2. [ システム のプロパティ] で、[環境変数] を選択 します

  3. [ 環境変数] の [ システム変数] で、[新規] を選択 します

  4. [新しいシステム変数] に「変数名」と入力し、変数に ADB ウォレットを解凍する場所を入力TNS_ADMINします。 [OK] をクリックします。

  5. [OK] を選択します。

  6. [ 環境変数] で、[ OK] を選択します

  7. [ システムのプロパティ] で、[ OK] を選択します

Oracle ADB 資格情報を構成する

  1. Windows マシンで、Oracle ADB 資格情報をダウンロードしたフォルダーに移動します。「 クライアント資格情報をダウンロードする」を参照してください

  2. 資格情報をフォルダーに解凍します。 この例では、資格情報が c:\data\wallet\wallet_contosomart に抽出されます。

    ウォレット フォルダーに解凍されたウォレット ファイルを含む画像。

    注意

    tnsnames.ora ファイルは、Oracle 自律データベースへの接続に使用されます。

  3. メモ帳などのエディターで sqlnet.ora を開きます。

  4. [WALLET_LOCATION] で、[ディレクトリ] オプションの下にあるウォレット フォルダーへのパスを変更します。 次の点に注意してください。

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="c:\data\wallet\Wallet_ContosoMart")))

  5. sqlnet.ora ファイルを保存して閉じます。

wallets フォルダー内の tnsnames.ora ファイルを開きます。 ファイルには、接続先の ADB net サービス名の一覧が含まれています。 この例では、名前はcontosomart_high、contosomart_low、およびcontosomart_mediumです。 ADB のネット サービス名は異なります。

3 つの例の TNS 名、contosomart_high、contosomart_low、contosomart_mediumを含む画像。

接続の初期テスト

  1. Power BI Desktop を開きます。

  2. [データの取得] を選択します。

  3. [データの取得] で、[データベースOracle データベース>] を選択します。

  4. 接続する Oracle Autonomous Database サーバーの名前を入力します。 この例では、サーバーはcontosomart_high。 [OK] をクリックします。

    サーバー名とインポート モードが選択されているcontosomart_highを含む [Oracle データベース] ダイアログ ボックスの画像。

  5. Power BI Desktopからこのサーバーに初めてサインインする場合は、資格情報の入力を求められます。 [ データベース] を選択し、Oracle データベースのユーザー名とパスワードを入力します。 ここで入力する資格情報は、接続する特定の Oracle 自律データベースのユーザー名とパスワードです。 この例では、データベースの初期管理者ユーザー名とパスワードが使用されます。 次に、 [接続](Connect) を選択します。

    [データベース] が選択され、既定のデータベース ユーザー名とパスワードが入力された資格情報ダイアログ ボックスの画像。

この時点で、 ナビゲーター が表示され、接続データが表示されます。

ナビゲーターが開き、そのすべてのcontosomart_highデータベースが表示された画像

構成が正しく設定されていないため、いくつかのエラーのいずれかが発生する場合もあります。 これらのエラーについては、「 トラブルシューティング」を参照してください。

この最初のテストで発生する可能性がある 1 つのエラーは 、データベースが接続されているがデータが含まれないナビゲーターで発生します。 代わりに、Oracle: ORA-28759: ファイルを開くエラーがデータの代わりに表示されます。

上部にデータベース名が表示されているナビゲーターの画像。ただし、データの代わりにエラーが表示されます。

このエラーが発生した場合は、sqlnet.ora で指定したウォレット フォルダー パスがウォレット フォルダーへの完全で正しいパスであることを確認してください。

ゲートウェイを構成する

  1. Power BI サービスで、右上にある歯車アイコンを選択し、[ゲートウェイの管理] を選択します。

    開いているPower BI サービスの画像、歯車アイコンが選択され、[ゲートウェイの管理] が強調された [ゲートウェイの管理] メニュー。

  2. [ データ ソースの追加] で、[ データ ソースの追加] を選択してゲートウェイを使用します

    Power BI サービスの [データ ソースの追加] ウィンドウの画像。ゲートウェイを使用するためのデータ ソースの追加が強調されています。

  3. [ データ ソース名] に、データ ソース設定として使用する名前を入力します。

  4. [ データ ソースの種類] で [Oracle] を選択 します

  5. [ サーバー] に、Oracle Autonomous Database サーバーの名前を入力します。

  6. [ 認証方法] で、[基本] を選択 します

  7. Oracle Autonomous Database のユーザー名とパスワードを入力します。 この例では、既定のデータベース管理者のユーザー名とパスワードが使用されます。

  8. [追加] を選択します。

    [データ ソースの設定] ウィンドウの画像。すべてのデータ ソース設定が入力されています。

すべてが正しくインストールされ、構成されている場合は、[ 接続に成功しました ] というメッセージが表示されます。 「Power Query Online から Oracle データベースに接続する」で説明されている手順を使用して、Oracle 自律データベースに接続できるようになりました。

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

Power Query Desktop と Power Query Online には、必要に応じてクエリに追加できる一連の高度なオプションが用意されています。

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

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

必要な詳細オプションを選択したら、Power Query デスクトップで [OK] を選択するか、Power Query Online で [次へ] を選択して Oracle データベースに接続します。

既知の問題と制限事項

その Oracle データベースに対するデータセットの更新後、約 30 分間、Power BI セッションを Oracle データベースでアクティブにすることができます。 約 30 分後にのみ、これらのセッションは 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 で発生する場合は、「 データ ソースの管理 - Oracle」の手順に従います。

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

次のステップ

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