PostgreSQL

Riepilogo

Articolo Descrizione
Stato di rilascio Disponibilità generale
Prodotti Excel
Power BI (modelli semantici)
Power BI (flussi di dati)
Infrastruttura (Dataflow Gen2)
Power Apps (flussi di dati)
Dynamics 365 per Customer Insights
Analysis Services
Tipi di autenticazione supportati Database (nome utente/password)
Documentazione di riferimento sulle funzioni PostgreSQL.Database

Nota

Alcune funzionalità possono essere presenti in un prodotto, ma non altre a causa di pianificazioni di distribuzione e funzionalità specifiche dell'host.

Prerequisiti

A partire dalla versione di dicembre 2019, NpgSQL 4.0.10 fornito con Power BI Desktop e non è necessaria alcuna installazione aggiuntiva. L'installazione gac esegue l'override della versione fornita con Power BI Desktop, che sarà l'impostazione predefinita. L'aggiornamento è supportato sia tramite il cloud nel servizio Power BI sia in locale tramite il gateway dati locale. Per aggiornare i dati dal servizio Power BI senza un gateway dati locale, PostgreSQL deve essere ospitato in modo da consentire la connessione diretta dai servizio Power BI in Azure. Questa funzionalità è supportata in modo nativo per PostgreSQL ospitato in Microsoft Azure. Per altri ambienti di hosting, consultare il provider di hosting sulla configurazione di PostgreSQL per l'accesso diretto da Internet. Se PostgreSQL è configurato in modo che non sia possibile accedervi direttamente da Internet (scelta consigliata per la sicurezza), è necessario usare un gateway dati locale per gli aggiornamenti. Nella servizio Power BI verrà usato NpgSQL 4.0.10, mentre l'aggiornamento locale userà l'installazione locale di NpgSQL, se disponibile e in caso contrario userà NpgSQL 4.0.10.

Per le versioni di Power BI Desktop rilasciate prima di dicembre 2019, è necessario installare il provider NpgSQL nel computer locale. Per installare il provider NpgSQL, passare alla pagina delle versioni, cercare v4.0.10 ed eseguire il file .msi. L'architettura del provider (a 32 bit o a 64 bit) deve corrispondere all'architettura del prodotto in cui si intende usare il connettore. Durante l'installazione, assicurarsi di selezionare NpgSQL GAC Installation (Installazione gaC NpgSQL) per assicurarsi che NpgSQL stesso venga aggiunto al computer.

È consigliabile usare NpgSQL 4.0.10. NpgSQL 4.1 e versioni successive non funzioneranno a causa di incompatibilità delle versioni di .NET.

Installazione di Npgsql con installazione GAC selezionata.

Per Power Apps, è necessario installare il provider NpgSQL nel computer locale. Per installare il provider NpgSQL, passare alla pagina delle versioni e scaricare la versione pertinente. Scaricare ed eseguire il programma di installazione (il file NpgSQL-[numero di versione].msi). Assicurarsi di selezionare l'installazione gac NpgSQL e al riavvio del computer per rendere effettiva l'installazione.

Funzionalità supportate

  • Import
  • DirectQuery (modelli semantici di Power BI)
  • Opzioni avanzate
    • Timeout del comando in minuti
    • Istruzione SQL nativa
    • Colonne delle relazioni
    • Esplora con gerarchia completa

Connessione a un database PostgreSQL da Power Query Desktop

Dopo aver installato il provider Npgsql corrispondente, è possibile connettersi a un database PostgreSQL. Per stabilire la connessione, seguire questa procedura:

  1. Selezionare l'opzione database PostgreSQL nella selezione del connettore.

  2. Nella finestra di dialogo Database PostgreSQL visualizzata specificare il nome del server e del database.

    Generatore di connessioni PostgreSQL in Power BI.

  3. Selezionare la modalità di connettività dati Importa o DirectQuery .

  4. Se è la prima volta che ci si connette a questo database, immettere le credenziali di PostgreSQL nelle caselle Nome utente e Password del tipo di autenticazione del database . Selezionare il livello a cui applicare le impostazioni di autenticazione. Selezionare Connetti.

    Immettere il nome utente e la password di PostgreSQL.

    Per altre informazioni sull'uso dei metodi di autenticazione, vedere Autenticazione con un'origine dati.

    Nota

    Se la connessione non è crittografata, verrà visualizzato il messaggio seguente.

    Supporto della crittografia del database SQL di Azure.

    Selezionare OK per connettersi al database usando una connessione non crittografata oppure seguire le istruzioni in Abilitare le connessioni crittografate al motore di database per configurare le connessioni crittografate al database PostgreSQL.

  5. In Strumento di navigazione selezionare le informazioni sul database desiderate, quindi selezionare Carica per caricare i dati o Trasforma dati per continuare a trasformare i dati in editor di Power Query.

    Strumento di spostamento desktop di Power Query che mostra i dati dei dipendenti delle risorse umane nel database PostgreSQL.

Connessione a un database PostgreSQL da Power Query Online

Per stabilire la connessione, seguire questa procedura:

  1. Selezionare l'opzione database PostgreSQL nella selezione del connettore.

  2. Nella finestra di dialogo Database PostgreSQL visualizzata specificare il nome del server e del database.

    Generatore di connessioni PostgreSQL in Power Query Online.

  3. Selezionare il nome del gateway dati locale da usare.

  4. Selezionare il tipo di autenticazione di base e immettere le credenziali postgreSQL nelle caselle Nome utente e Password .

  5. Se la connessione non è crittografata, deselezionare Usa Connessione crittografato.

  6. Selezionare Avanti per connettersi al database.

  7. In Strumento di navigazione selezionare i dati necessari, quindi selezionare Trasforma i dati per trasformare i dati in editor di Power Query.

Connessione con opzioni avanzate

Power Query Desktop offre un set di opzioni avanzate che è possibile aggiungere alla query, se necessario.

Opzioni avanzate incluse nella finestra di dialogo Connessione PostgreSQL.

Nella tabella seguente sono elencate tutte le opzioni avanzate che è possibile impostare in Power Query Desktop.

Opzione Avanzate Descrizione
Timeout del comando in minuti Se la connessione dura più di 10 minuti (timeout predefinito), è possibile immettere un altro valore in minuti per mantenere la connessione aperta più a lungo. Questa opzione è disponibile solo in Power Query Desktop.
SQL statement Per informazioni, vedere Importare dati da un database usando una query di database nativa.
Includi colonne relazioni Se selezionata, include colonne che potrebbero avere relazioni con altre tabelle. Se questa casella è deselezionata, queste colonne non verranno visualizzate.
Esplora con gerarchia completa Se selezionata, lo strumento di navigazione visualizza la gerarchia completa delle tabelle nel database a cui ci si connette. Se deselezionato, lo strumento di navigazione visualizza solo le tabelle le cui colonne e righe contengono dati.

Dopo aver selezionato le opzioni avanzate necessarie, selezionare OK in Power Query Desktop per connettersi al database PostgreSQL.

Riduzione della query nativa

Per impostazione predefinita, la riduzione della query nativa è abilitata. Le operazioni che possono essere piegate verranno applicate sopra la query nativa in base alla normale logica di importazione o query diretta. La riduzione della query nativa non è applicabile con i parametri facoltativi presenti in Value.NativeQuery().

Nel raro caso in cui la riduzione non funziona con la riduzione della query nativa abilitata, è possibile disabilitarla. Per disabilitare la riduzione della query nativa, impostare il EnableFolding flag su false per Value.NativeQuery() nell'editor avanzato.

Esempio: Value.NativeQuery(target as any, query, null, [EnableFolding=false])

Risoluzione dei problemi

La query nativa può generare l'errore seguente:

We cannot fold on top of this native query. Please modify the native query or remove the 'EnableFolding' option.

Un passaggio di base di risoluzione dei problemi consiste nel verificare se la query in Value.NativeQuery() genera lo stesso errore con una limit 1 clausola intorno a essa:

select * from (query) _ limit 1