Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Rozszerzenie PostgreSQL dla Visual Studio Code umożliwia otwieranie sesji psql automatycznie połączonych z bazami danych oraz uruchamianie plików .sql za pomocą psql. Uzyskujesz pełny dostęp do natywnych funkcji psql, w tym poleceń poprzedzanych ukośnikiem odwrotnym, przepływów pracy COPY i interaktywnego skryptowania, bez opuszczania edytora.
Rozszerzenie automatycznie przekazuje dane połączenia (host, port, bazę danych, użytkownika i hasło) do psql, dzięki czemu możesz rozpocząć pracę natychmiast po otwarciu sesji.
Wymagania wstępne
- Rozszerzenie PostgreSQL dla Visual Studio Code zostało zainstalowane.
- Aktywne połączenie z serwerem PostgreSQL. Aby uzyskać instrukcje konfiguracji, zobacz Szybki start: nawiązywanie połączenia i wykonywanie zapytań w usłudze PostgreSQL.
- Klient wiersza polecenia
psqlzainstalowany w systemie. - Otwórz folder roboczy w Visual Studio Code.
Note
Jeśli rozszerzenie nie może zlokalizować psqlpliku , zostanie wyświetlone powiadomienie o błędzie z linkiem Dowiedz się więcej do strony pobierania bazy danych PostgreSQL. Można również wskazać rozszerzeniu niestandardową lokalizację instalacji za pomocą ustawienia pgsql.pgBinaryDirs. Zobacz Konfigurowanie ścieżki binarnej psql.
Wybieranie między psql i edytorem zapytań
Większość przepływów pracy postgreSQL używa obu narzędzi w różnym czasie:
| Narzędzie | Najlepsze dla |
|---|---|
| Edytor zapytań i funkcja IntelliSense | Funkcja IntelliSense, wyniki graficzne, wykresy, historia zapytań i eksportowanie wyników. |
psql terminal |
Polecenia z ukośnikiem odwrotnym, natywne uruchamianie skryptów, przepływy pracy \copy i rozwiązywanie problemów w terminalu. |
Otwieranie połączonego terminalu
Otwórz sesję psql , która jest automatycznie połączona z określoną bazą danych. Rozszerzenie uruchamia psql z flagami -h, -p, -d i -U oraz ustawia zmienną środowiskową PGPASSWORD, więc nie trzeba ręcznie wprowadzać danych połączenia.
- W drzewie Połączenia kliknij prawym przyciskiem myszy węzeł bazy danych.
- Wybierz pozycję Połącz z usługą PSQL.
Otworzy się terminal zadań programu Visual Studio Code z elementem psql połączonym z wybraną bazą danych. Karta terminalu nosi nazwę PSQL: <nazwa> profilu.
Możesz również uruchomić to polecenie z Palety poleceń (Ctrl+Shift+P / Cmd+Shift+P): wyszukaj PGSQL: Connect with PSQL.
Note
W przypadku połączeń Azure Database for PostgreSQL korzystających z uwierzytelniania Microsoft Entra ID rozszerzenie weryfikuje token uwierzytelniania przed uruchomieniem psql i przekazuje token jako hasło. Sesja pozostaje połączona bez ręcznego ponownego uwierzytelniania.
Uruchamianie pliku SQL
Uruchom plik .sql za pomocą psql, używając połączenia z aktywnego edytora. Dane wyjściowe są wyświetlane w terminalu zadań Visual Studio Code.
-
.sqlOtwórz plik w edytorze. - Połącz edytor z bazą danych, jeśli nie jest jeszcze połączony.
- Kliknij prawym przyciskiem myszy w edytorze i wybierz polecenie Uruchom plik za pomocą programu PSQL.
Rozszerzenie zapisuje plik, a następnie uruchamia psql -f <filepath> dla aktywnego połączenia. Otwiera się terminal zadania, aby wyświetlić wynik wykonania. Katalog roboczy jest ustawiany na folder zawierający plik, dzięki czemu ścieżki względne w skrypcie są prawidłowo rozpoznawane.
Ważna
Zapisz plik przed wykonaniem. Jeśli nie można zapisać niezapisanych zmian, rozszerzenie wyświetla komunikat informujący, że plik musi zostać zapisany przed wykonaniem poleceń PSQL. Operacja zostaje anulowana.
Konfigurowanie ścieżki binarnej psql
Rozszerzenie wyszukuje psql w trzech lokalizacjach w następującej kolejności:
- Dołączone pliki binarne: narzędzia klienckie PostgreSQL dostarczane wraz z rozszerzeniem, uporządkowane według wersji.
-
Ścieżka systemu: katalogi wymienione w zmiennej środowiskowej
PATHsystemu operacyjnego. -
Niestandardowe katalogi: ścieżki dodane w ustawieniu
pgsql.pgBinaryDirs.
Jeśli zostanie znalezionych wiele wersji psql, rozszerzenie wybierze wersję, która najlepiej pasuje do wersji PostgreSQL serwera. Jeśli nie istnieje dokładne dopasowanie, używa najbliższej dostępnej wersji.
Aby dodać niestandardowy katalog binarny:
- Otwórz pozycję Ustawienia (
Ctrl+,/Cmd+,). - Wyszukaj
pgsql.pgBinaryDirs. - Wybierz pozycję Dodaj element i wprowadź ścieżkę bezwzględną do katalogu zawierającego
psqlplik binarny. - Uruchom ponownie Visual Studio Code, aby zmiany zaczęły obowiązywać.
Wskazówka
W systemie macOS z oprogramowaniem Homebrew typową ścieżką jest /opt/homebrew/opt/postgresql@17/bin. W Windows zazwyczaj jest to C:\Program Files\PostgreSQL\17\bin.
Jak rozszerzenie uruchamia narzędzie psql
Po wybraniu opcji Połącz za pomocą PSQL lub Uruchom plik za pomocą PSQL rozszerzenie tworzy wywołanie psql w następujący sposób:
| Szczegóły połączenia | W jaki sposób rozszerzenie je przekazuje |
|---|---|
Host (-h) |
Z adresu serwera w profilu połączenia. |
Port (-p) |
Z portu profilu połączenia. Wartość domyślna to 5432. |
Baza danych (-d) |
Wybrany węzeł bazy danych lub domyślna baza danych profilu połączenia |
Użytkownik (-U) |
Nazwa użytkownika dla profilu połączenia; w przypadku Microsoft Entra ID nazwa użytkownika Entra lub adres e-mail Entra |
| Hasło | Ustawiane za pomocą zmiennej środowiskowej PGPASSWORD; w przypadku Microsoft Entra ID, odświeżony token dostępu |
| Kodowanie klienta | Ustaw za pomocą zmiennej środowiskowej PGCLIENTENCODING (wartości domyślne to UTF8) |
Rozszerzenie uruchamia psql jako zadanie w Visual Studio Code, które otwiera się w panelu Terminal. Terminal zadania pozostaje otwarty po psql zakończeniu pracy, aby można było przejrzeć dane wyjściowe.
Przypadki użycia
Terminal psql jest przydatny, gdy potrzebujesz możliwości poza wbudowanym edytorem zapytań:
-
Interaktywne sesje SQL: uruchom polecenia ad hoc i sprawdź wyniki w znanym
psqlśrodowisku. -
Zbiorczy import/eksport danych: Użyj poleceń
\copylubCOPYdo wydajnego ładowania danych. -
Zadania administracyjne: Zarządzanie rolami, uprawnieniami i konfiguracją serwera z pełnym
psqldostępem. -
Testowanie skryptów: zweryfikuj
.sqlskrypty natywnepsqlprzed ich wdrożeniem. -
Polecenia z ukośnikiem odwrotnym: Użyj
\dt,\d+,\timing,\xi innych poleceń, które nie są dostępne w graficznym edytorze zapytań.
Typowe psql zadania
Inspekcja obiektów bazy danych
Użyj psql poleceń z ukośnikiem odwrotnym do szybkiego sprawdzania schematu:
\dt
\d+ public.orders
\dn
Te polecenia wyświetlają tabele, pokazują szczegółowe definicje obiektów i wyświetlają schematy.
Włącz pomiar czasu i rozszerzone dane wyjściowe
\timing on
\x on
SELECT * FROM public.orders LIMIT 5;
\timing wyświetla czas trwania zapytania po każdej instrukcji. Rozwinięte dane wyjściowe (\x) ułatwiają odczytywanie szerokich wierszy.
Ładowanie lub eksportowanie danych za pomocą polecenia \copy
\copy public.customers FROM '/Users/example/customers.csv' WITH (FORMAT csv, HEADER true)
Użyj \copy do zbiorczego importu lub eksportu z poziomu terminala, z ponownym wykorzystaniem kontekstu połączenia zarządzanego przez rozszerzenie.
Troubleshoot
psql nie znaleziono
Jeśli rozszerzenie wyświetla błąd "Nie można odnaleźć pliku wykonywalnego psql", spróbuj wykonać następujące kroki:
- Zainstaluj narzędzia klienckie PostgreSQL dla systemu operacyjnego ze strony pobierania postgreSQL.
- Sprawdź, czy
psqljest dostępna, uruchamiając poleceniepsql --versionw terminalu systemu. - Jeśli
psqljest zainstalowana w niestandardowej lokalizacji, dodaj katalog dopgsql.pgBinaryDirsustawienia. Zobacz Konfigurowanie ścieżki binarnej psql. - Uruchom ponownie program Visual Studio Code.
Otwieranie folderu obszaru roboczego
Rozszerzenie wymaga otwartego folderu obszaru roboczego, aby uruchomić psql. Jeśli zostanie wyświetlony komunikat informujący, że folder obszaru roboczego musi być otwarty, otwórz folder zplikiem >Otwórz folder, a następnie spróbuj ponownie.
Błędy uwierzytelniania lub połączenia
Jeśli psql zostanie otwarte, ale połączenie się nie powiedzie:
- Upewnij się, że host, port i baza danych są poprawne w profilu połączenia. Zobacz Połączenia i tożsamość.
- W przypadku Microsoft Entra ID uwierzytelniania sprawdź, czy twoje konto jest nadal zalogowane. Rozszerzenie odświeża tokeny automatycznie, ale wygasłe sesje mogą wymagać ponownego uwierzytelnienia.
- Jeśli używasz protokołu SSL lub tunelu SSH, ponownie przetestuj to samo połączenie z okna dialogowego połączenia przed ponownym otwarciem
psqlprogramu .
Zmiany plików nie są uruchamiane
Po uruchomieniu pliku z programem Run file with PSQL rozszerzenie zapisuje plik na dysku przed wykonaniem. Jeśli zapisywanie zakończy się niepowodzeniem, rozszerzenie anuluje operację. Zapisz plik pomyślnie przed przejrzeniem danych wyjściowych.