次の方法で共有


ネイティブ データベース クエリを使用してデータベースからデータをインポートする

Power Query を使用すると、サポートされているさまざまなデータベースからデータを柔軟にインポートできます。 ネイティブ データベース クエリを実行できるため、Power Query インターフェイスを使用してクエリを作成するのにかかる時間を節約できます。 この機能は、既に存在する複雑なクエリを使用する場合や、Power Query インターフェイスを使用して再構築する方法を知りたくない場合に特に便利です。

手記

ネイティブ データベース クエリの 1 つの目的は、非副作用になることです。 ただし、Power Query では、クエリがデータベースに影響を与えないという保証はありません。 別のユーザーによって書き込まれたネイティブ データベース クエリを実行する場合は、資格情報で評価されるクエリを認識していることを確認するメッセージが表示されます。 詳細については、「ネイティブ データベース クエリセキュリティ を参照してください。

Power Query を使用すると、データベースに接続するときに 詳細オプションのテキスト ボックスにネイティブ データベース クエリを指定できます。 次の例では、SQL ステートメント テキスト ボックスに入力したネイティブ データベース クエリを使用して、SQL Server データベースからデータをインポートします。 この手順は、Power Query がサポートするネイティブ データベース クエリを使用する他のすべてのデータベースで似ています。

  1. Power Query を使用して SQL Server データベースに接続します。 コネクタ選択で SQL Server データベース のオプションを選択します。

  2. SQL Server データベースの ポップアップ ウィンドウで、次の操作を行います。

    1. ネイティブ データベース クエリを使用してデータをインポートする ServerDatabase を指定します。

    2. [詳細オプション]で、SQL ステートメント フィールドを選択し、ネイティブ データベース クエリを貼り付けるか入力し、[OK] 選択します。

      ネイティブ データベース クエリを実行します。

  3. このサーバーに初めて接続する場合は、データベースに接続するための認証モードを選択するプロンプトが表示されます。 適切な認証モードを選択し、続行します。

    手記

    データ ソース (サーバーとデータベースの両方) にアクセスできない場合は、サーバーとデータベースへのアクセスを要求するプロンプトが表示されます (データ ソースのアクセス要求情報が Power BI で指定されている場合)。

  4. 接続が確立されると、結果データが Power Query エディターで返されます。

    データを好みに応じて整形した後、[適用]、& [閉じる]、 を選択して変更を保存し、データをインポートします。

ネイティブ データベース クエリをサポートするコネクタ

次の Power Query コネクタは、ネイティブ データベース クエリをサポートしています。

コネクタ ネイティブ データベース クエリの種類
Amazon Redshift SQL ステートメント
Azure Analysis Services データベース MDX または DAX クエリ
Azure Database for PostgreSQL SQL ステートメント
Azure Cosmos DB SQL ステートメント
Azure Synapse Analytics SQL ステートメント
Azure SQL データベース SQL ステートメント
DataWorld.Dataset dwSQL
Dataverse SQL ステートメント
Essbase MDX ステートメント
FHIR FHIR 検索
Google BigQuery SQL ステートメント
IBM Db2 データベース SQL ステートメント
IBM Informix データベース (ベータ) SQL ステートメント
MySQL データベース SQL ステートメント
ODBC SQL ステートメント
OLE DB SQL ステートメント
Oracle データベース SQL ステートメント
PostgreSQL SQL ステートメント
SAP HANA データベース SQL ステートメント
雪片 SQL ステートメント
SQL Server Analysis Services データベース MDX または DAX クエリ
SQL Server データベース SQL ステートメント
TIBCO(R) データ仮想化 (ベータ) SQL ステートメント
Vena (ベータ) モデル クエリ (MQL)

制限事項と問題

ネイティブ データベース クエリを使用する前に、満たす可能性がある制限事項と問題に注意する必要があります。

データ定義言語 (DDL) 操作

データ ソースに対するデータ定義言語 (DDL) 操作の実行 、Power Query サポートされていません。このような操作の例としては、"DROP TABLE"、"CREATE TABLE"、"ALTER TABLE" があります。 このようなコマンドを使用しようとすると、複数のエラーやエラーが発生する可能性があります。

クエリフォールディング

ネイティブ データベース クエリの使用中のクエリ フォールディングは、一定数の Power Query コネクタのみに制限されます。 詳細については、「ネイティブ クエリの クエリ フォールディング」を参照してください。

ネイティブ データベース クエリのセキュリティ

場合によっては、別のユーザーによって作成されたクエリ、または高度なエディターまたは数式バー (基本的に、ネイティブ クエリ入力ボックスが表示されているコネクタ ダイアログの外部の他のパス) を使用しようとすると、次のメッセージが表示されることがあります。

ネイティブ データベース クエリ メッセージを します。

このメッセージが表示された場合は、編集アクセス許可を選択します。 この選択により、Native Database Query ダイアログ ボックスが開きます。 ネイティブ データベース クエリを実行するか、クエリをキャンセルする機会が与えられます。

ネイティブ データベース クエリの承認を します。

既定では、コネクタ ダイアログの外部でネイティブ データベース クエリを実行すると、実行されるクエリ テキストがユーザーによって承認されるように、異なるクエリ テキストを実行するたびにプロンプトが表示されます。

手記

データの取得操作に挿入するネイティブ データベース クエリでは、クエリを実行するかどうかの確認は行われません。 走るだけです。

ネイティブ データベース クエリが Power BI Desktop または Excel で実行されている場合は、ネイティブ データベース クエリのセキュリティ メッセージをオフにすることができます。 セキュリティ メッセージをオフにするには:

  1. Power BI Desktop を使用している場合は、[ファイル] タブで、[オプションと設定] > [オプション]を選択します。

    Excel を使用している場合は、[データ] タブの [データの取得] > [クエリ オプション] 選択します。

  2. グローバル 設定で、セキュリティを選択します。

  3. [新しいネイティブ データベース クエリのユーザー承認が必要をクリアします。

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

また、Power BI Desktop または Excel で特定のデータ ソースに対して以前に承認したネイティブ データベース クエリの承認を取り消すこともできます。 承認を取り消すには:

  1. Power BI Desktop を使用している場合は、[ファイル] タブの [データ ソースの設定] >オプションと設定を選択します。

    Excel を使用している場合は、[データ] タブの [データの取得] > [データ ソース設定]を選択します。

  2. [データ ソースの設定] ダイアログ ボックスで、[グローバル権限] を選択します。 次に、承認を取り消すネイティブ データベース クエリを含むデータ ソースを選択します。

  3. [アクセス許可の編集]を選択します。

  4. [アクセス許可の編集] ダイアログ ボックスで、[ネイティブ データベース クエリ] の下にある[承認の取り消し] を選択します。

    ネイティブ データベース クエリの承認を取り消します。