PostgreSQL

Podsumowanie

Element opis
Stan wydania Ogólna dostępność
Produkty Excel
Power BI (modele semantyczne)
Power BI (przepływy danych)
Sieć szkieletowa (Dataflow Gen2)
Power Apps (przepływy danych)
Dynamics 365 Customer Insights
Analysis Services
Obsługiwane typy uwierzytelniania Baza danych (nazwa użytkownika/hasło)
Dokumentacja referencyjna funkcji PostgreSQL.Database

Uwaga

Niektóre funkcje mogą być obecne w jednym produkcie, ale nie w innych ze względu na harmonogramy wdrażania i możliwości specyficzne dla hosta.

Wymagania wstępne

Od grudnia 2019 r. program NpgSQL 4.0.10 jest dostarczany z programem Power BI Desktop i nie jest wymagana żadna dodatkowa instalacja. Instalacja GAC zastępuje wersję udostępnioną w programie Power BI Desktop, która będzie domyślna. Odświeżanie jest obsługiwane zarówno za pośrednictwem chmury w usługa Power BI, jak i lokalnie za pośrednictwem lokalnej bramy danych. Aby odświeżyć dane z usługa Power BI bez lokalnej bramy danych, usługa PostgreSQL musi być hostowana w sposób umożliwiający bezpośrednie połączenie z usługa Power BI na platformie Azure. Jest to natywnie obsługiwane w przypadku bazy danych PostgreSQL hostowanej na platformie Microsoft Azure. W przypadku innych środowisk hostingu należy skontaktować się z dostawcą hostingu dotyczącym konfigurowania bazy danych PostgreSQL pod kątem bezpośredniego dostępu z Internetu. Jeśli skonfigurowano usługę PostgreSQL tak, aby nie można było uzyskać bezpośredniego dostępu z Internetu (zalecane w przypadku zabezpieczeń), należy użyć lokalnej bramy danych na potrzeby odświeżeń. W usługa Power BI będzie używany program NpgSQL 4.0.10, podczas gdy odświeżanie lokalne będzie używać lokalnej instalacji bazy danych NpgSQL, jeśli jest dostępna, i w przeciwnym razie użyje programu NpgSQL 4.0.10.

W przypadku wersji programu Power BI Desktop wydanych przed grudniem 2019 r. należy zainstalować dostawcę npgSQL na komputerze lokalnym. Aby zainstalować dostawcę npgSQL, przejdź do strony wydania, wyszukaj plik v4.0.10 i pobierz i uruchom plik .msi. Architektura dostawcy (32-bitowa lub 64-bitowa) musi być zgodna z architekturą produktu, w którym zamierzasz używać łącznika. Podczas instalowania upewnij się, że wybrano pozycję NpgSQL GAC Installation (Instalacja GAC serwera NpgSQL), aby upewnić się, że serwer NpgSQL jest dodawany do maszyny.

Zalecamy użycie bazy danych NpgSQL 4.0.10. Program NpgSQL 4.1 i nowsze wersje nie będą działać z powodu niezgodności wersji platformy .NET.

Instalator npgsql z wybraną instalacją GAC.

W przypadku usługi Power Apps należy zainstalować dostawcę npgSQL na komputerze lokalnym. Aby zainstalować dostawcę npgSQL, przejdź do strony wydań i pobierz odpowiednią wersję. Pobierz i uruchom plik instalatora (npgSQL-[numer wersji].msi). Upewnij się, że wybrano instalację GAC serwera NpgSQL i po ponownym uruchomieniu maszyny, aby ta instalacja weszła w życie.

Obsługiwane możliwości

  • Importuj
  • Tryb DirectQuery (modele semantyczne usługi Power BI)
  • Opcje zaawansowane
    • Limit czasu polecenia w minutach
    • Natywna instrukcja SQL
    • Kolumny relacji
    • Nawiguj, używając pełnej hierarchii

Połączenie do bazy danych PostgreSQL z programu Power Query Desktop

Po zainstalowaniu zgodnego dostawcy npgsql można nawiązać połączenie z bazą danych PostgreSQL. Aby nawiązać połączenie, wykonaj następujące czynności:

  1. Wybierz opcję Bazy danych PostgreSQL w wybranym łączniku.

  2. W wyświetlonym oknie dialogowym bazy danych PostgreSQL podaj nazwę serwera i bazy danych.

    Konstruktor połączeń PostgreSQL w usłudze Power BI.

  3. Wybierz tryb łączności danych Import lub DirectQuery.

  4. Jeśli po raz pierwszy łączysz się z tą bazą danych, wprowadź poświadczenia bazy danych PostgreSQL w polach Nazwa użytkownika i Hasło typu uwierzytelniania bazy danych. Wybierz poziom, do których mają być stosowane ustawienia uwierzytelniania. Następnie wybierz pozycję Połączenie.

    Wprowadź nazwę użytkownika i hasło bazy danych PostgreSQL.

    Aby uzyskać więcej informacji na temat używania metod uwierzytelniania, zobacz Uwierzytelnianie ze źródłem danych.

    Uwaga

    Jeśli połączenie nie jest zaszyfrowane, zostanie wyświetlony monit z następującym komunikatem.

    Obsługa szyfrowania bazy danych Azure SQL Database.

    Wybierz przycisk OK , aby nawiązać połączenie z bazą danych przy użyciu nieszyfrowanego połączenia, lub postępuj zgodnie z instrukcjami w temacie Włączanie szyfrowanych połączeń z aparatem bazy danych, aby skonfigurować szyfrowane połączenia z bazą danych PostgreSQL.

  5. W nawigatorze wybierz żądane informacje o bazie danych, a następnie wybierz pozycję Załaduj, aby załadować dane lub Przekształć dane, aby kontynuować przekształcanie danych w Edytor Power Query.

    Nawigator programu Power Query Desktop przedstawiający dane pracowników działu kadr w bazie danych PostgreSQL.

Połączenie do bazy danych PostgreSQL z usługi Power Query Online

Aby nawiązać połączenie, wykonaj następujące czynności:

  1. Wybierz opcję Bazy danych PostgreSQL w wybranym łączniku.

  2. W wyświetlonym oknie dialogowym bazy danych PostgreSQL podaj nazwę serwera i bazy danych.

    Konstruktor połączeń PostgreSQL w usłudze Power Query Online.

  3. Wybierz nazwę lokalnej bramy danych, której chcesz użyć.

  4. Wybierz rodzaj uwierzytelniania podstawowego i wprowadź poświadczenia bazy danych PostgreSQL w polach Nazwa użytkownika i Hasło.

  5. Jeśli połączenie nie jest zaszyfrowane, wyczyść pole Użyj szyfrowanego Połączenie ion.

  6. Wybierz przycisk Dalej , aby nawiązać połączenie z bazą danych.

  7. W nawigatorze wybierz wymagane dane, a następnie wybierz pozycję Przekształć dane, aby przekształcić dane w Edytor Power Query.

Połączenie przy użyciu opcji zaawansowanych

Program Power Query Desktop udostępnia zestaw zaawansowanych opcji, które można dodać do zapytania w razie potrzeby.

Zaawansowane opcje zawarte w oknie dialogowym połączenie PostgreSQL.

W poniższej tabeli wymieniono wszystkie opcje zaawansowane, które można ustawić w programie Power Query Desktop.

Opcja zaawansowana opis
Limit czasu polecenia w minutach Jeśli połączenie trwa dłużej niż 10 minut (domyślny limit czasu), możesz wprowadzić inną wartość w minutach, aby zachować dłuższe otwieranie połączenia. Ta opcja jest dostępna tylko w programie Power Query Desktop.
SQL statement Aby uzyskać informacje, przejdź do tematu Importowanie danych z bazy danych przy użyciu natywnego zapytania bazy danych.
Dołącz kolumny relacji Jeśli jest zaznaczone, zawiera kolumny, które mogą mieć relacje z innymi tabelami. Jeśli to pole zostanie wyczyszczone, te kolumny nie będą widoczne.
Nawiguj, używając pełnej hierarchii Jeśli to pole jest zaznaczone, nawigator wyświetla pełną hierarchię tabel w bazie danych, z którą nawiązujesz połączenie. W przypadku wyczyszczenia nawigator wyświetla tylko tabele, których kolumny i wiersze zawierają dane.

Po wybraniu potrzebnych opcji zaawansowanych wybierz przycisk OK w programie Power Query Desktop, aby nawiązać połączenie z bazą danych PostgreSQL.

Składanie zapytań natywnych

Domyślnie jest włączone składanie zapytań natywnych. Operacje, które mogą składać, będą stosowane na podstawie zapytania natywnego zgodnie z normalną logiką importu lub zapytania bezpośredniego. Składanie zapytań natywnych nie ma zastosowania z opcjonalnymi parametrami obecnymi w parametrach Value.NativeQuery().

W rzadkich przypadkach składanie nie działa z włączonym składaniem zapytań natywnych, można je wyłączyć. Aby wyłączyć składanie zapytań natywnych, ustaw flagę EnableFolding na falsewartość Value.NativeQuery() w edytorze zaawansowanym.

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

Rozwiązywanie problemów

Zapytanie natywne może zgłosić następujący błąd:

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

Podstawowym krokiem rozwiązywania problemów jest sprawdzenie, czy zapytanie w wartości.NativeQuery() zgłasza ten sam błąd z klauzulą limit 1 wokół niej:

select * from (query) _ limit 1