Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Расширение PostgreSQL для Visual Studio Code позволяет открывать сеансы psql, автоматически подключённые к вашим базам данных, и запускать файлы .sql через psql. Вы получаете полный доступ ко встроенным возможностям psql, включая команды с обратной косой чертой, процессы COPY и интерактивные сценарии, не выходя из редактора.
Расширение автоматически передает в psql сведения о подключении (хост, порт, базу данных, пользователя и пароль), поэтому вы можете начать работу сразу после открытия сеанса.
Необходимые условия
- Расширение PostgreSQL для Visual Studio Code установлено
- Активное подключение к серверу PostgreSQL. Инструкции по настройке см. в кратком руководстве по подключению и запросу PostgreSQL.
-
psqlКлиент командной строки, установленный в системе. - Откройте папку рабочей области в Visual Studio Code.
Замечание
Если расширение не удается найти psql, отображается уведомление об ошибке со ссылкой "Подробнее " на страницу загрузки PostgreSQL. Вы также можете указать для расширения пользовательское расположение установки с помощью параметра pgsql.pgBinaryDirs. См. раздел "Настройка двоичного пути psql".
Выберите между psql и редактором запросов
Большинство рабочих процессов PostgreSQL используют оба инструмента в разное время:
| инструмент | лучше всего подходит для |
|---|---|
| Редактор запросов и IntelliSense | IntelliSense, графические результаты, диаграммы, журнал запросов и экспорт результатов. |
psql Терминал |
Команды с обратной косой чертой, выполнение нативных скриптов, рабочие процессы \copy и устранение неполадок через терминал. |
Открытие подключенного терминала
psql Откройте сеанс, который автоматически подключен к определенной базе данных. Расширение запускает psql с флагами -h, -p, -d и -U и задаёт переменную среды PGPASSWORD, поэтому вам не нужно вручную вводить сведения для подключения.
- В дереве подключений щелкните правой кнопкой мыши узел базы данных.
- Выберите "Подключиться к PSQL".
Откроется терминал задачи Visual Studio Code, в котором psql подключен к выбранной базе данных. Вкладка терминала называется PSQL: <имя> профиля.
Вы также можете выполнить эту команду из палитры команд (Ctrl+Shift+P / Cmd+Shift+P): выполните поиск PGSQL: подключение к PSQL.
Замечание
Для подключений к База данных Azure для PostgreSQL, использующих аутентификацию Microsoft Entra ID, расширение проверяет токен аутентификации перед запуском psql и передает этот токен в качестве пароля. Сеанс остается подключенным без повторной проверки подлинности вручную.
Запуск SQL-файла
Выполните файл .sql через psql, используя подключение из активного редактора. Выходные данные отображаются в терминале задач Visual Studio Code.
-
.sqlОткройте файл в редакторе. - Подключите редактор к базе данных, если она еще не подключена.
- Щелкните правой кнопкой мыши редактор и выберите "Запустить файл с помощью PSQL".
Расширение сохраняет файл, а затем запускает psql -f <filepath> для активного подключения. Откроется терминал задач для отображения выходных данных выполнения. Рабочий каталог устанавливается как папка, содержащая файл, поэтому относительные пути в вашем скрипте корректно разрешаются.
Important
Сохраните файл перед выполнением. Если не удалось сохранить несохраненные изменения, расширение отображает сообщение о том, что файл должен быть сохранен перед выполнением команд PSQL. Операция отменена.
Настройка двоичного пути psql
Расширение ищет psql в трех местах, в следующем порядке:
- Входящие в комплект двоичные файлы: клиентские инструменты PostgreSQL, поставляемые с расширением и сгруппированные по версиям.
-
System PATH: каталоги, перечисленные в переменной среды операционной
PATHсистемы. -
Пользовательские каталоги: пути, добавляемые в
pgsql.pgBinaryDirsпараметр.
При обнаружении нескольких версий psql расширение выбирает версию, которая лучше всего соответствует версии PostgreSQL сервера. Если точное совпадение отсутствует, используется ближайшая доступная версия.
Чтобы добавить пользовательский каталог двоичных файлов:
- Откройте параметры (
Ctrl+,/Cmd+,). - Найдите
pgsql.pgBinaryDirs. - Выберите "Добавить элемент" и введите абсолютный путь к каталогу, который содержит двоичный
psqlфайл. - Перезапустите Visual Studio Code, чтобы изменения вступили в силу.
Tip
В macOS при использовании Homebrew типичный путь — /opt/homebrew/opt/postgresql@17/bin. В Windows это обычно C:\Program Files\PostgreSQL\17\bin.
Как расширение запускает psql
При выборе подключения к PSQL или запуску файла с помощью PSQL расширение собирает psql вызов следующим образом:
| Сведения о подключении | Как расширение передает данные |
|---|---|
Хост (-h) |
Из адреса сервера в профиле подключения. |
Порт (-p) |
Из порта профиля соединения. Значение по умолчанию — 5432. |
База данных (-d) |
Выбранный узел базы данных или база данных профиля подключения по умолчанию |
Пользователь (-U) |
Имя пользователя профиля подключения; для Microsoft Entra ID имя пользователя или адрес электронной почты Entra |
| Пароль | Задается через переменную среды PGPASSWORD; для Microsoft Entra ID — обновленный токен доступа |
| Кодировка клиента | Настройка с помощью переменной PGCLIENTENCODING среды (по умолчанию UTF8— ) |
Расширение запускает psql в качестве задачи Visual Studio Code, которая открывается в панели Терминал. Терминал задачи остается открытым после завершения psql, чтобы можно было просмотреть вывод.
Случаи использования
Терминал psql полезен, если вам нужны возможности за пределами встроенного редактора запросов:
-
Интерактивные сеансы SQL: выполнение нерегламентированных команд и проверка результатов в знакомой
psqlсреде. -
Массовый импорт и экспорт данных: использование
\copyилиCOPYкоманды для высокопроизводительной загрузки данных. -
Административные задачи: управление ролями, разрешениями и конфигурацией сервера с полным
psqlдоступом. -
Тестирование скриптов: проверяйте скрипты в собственной среде
.sqlpsqlперед их развертыванием. -
Команды с обратной косой чертой: используйте
\dt,\d+,\timing,\xи другие команды, недоступные в графическом редакторе запросов.
Распространенные psql задачи
Проверка объектов базы данных
Используйте psql команды с обратной косой чертой для быстрого анализа схемы:
\dt
\d+ public.orders
\dn
Эти команды перечисляют таблицы, отображают подробные определения объектов и схемы списка.
Включите отображение времени выполнения и расширенный вывод
\timing on
\x on
SELECT * FROM public.orders LIMIT 5;
\timing отображает длительность запроса после каждой инструкции. Расширенные выходные данные (\x) упрощают чтение широких строк.
Загрузка или экспорт данных с помощью \copy
\copy public.customers FROM '/Users/example/customers.csv' WITH (FORMAT csv, HEADER true)
Используйте \copy для массового импорта или экспорта, ориентированного на терминал, при повторном использовании контекста подключения, управляемого расширением.
Устранение неполадок
psql не найдено
Если расширение отображает ошибку "Не удалось найти исполняемый файл psql", выполните следующие действия:
- Установите клиентские средства PostgreSQL для операционной системы на странице загрузки PostgreSQL.
- Убедитесь, что
psqlдоступен, выполнивpsql --versionв системном терминале. - Если
psqlустановлен в нестандартном каталоге, добавьте этот каталог в параметрpgsql.pgBinaryDirs. См. раздел "Настройка двоичного пути psql". - Перезапустите Visual Studio Code.
Открытие папки рабочей области
Для запуска psqlрасширения требуется открыть папку рабочей области. Если сообщение говорит, что папка рабочей области должна быть открыта, откройте папку соткрытым> и повторите попытку.
Сбои проверки подлинности или подключения
Если psql откроется, но подключение завершается ошибкой:
- Убедитесь, что имя хоста, порт и база данных указаны правильно в профиле подключения. См. Подключения и идентификация.
- Для проверки подлинности Microsoft Entra ID убедитесь, что ваша учетная запись по-прежнему входит в систему. Расширение автоматически обновляет токены, но истекшие сеансы могут потребовать повторной аутентификации.
- Если вы используете SSL или туннель SSH, повторите попытку подключения из диалогового окна подключения перед повторной открытием
psql.
Изменения файлов не выполняются
При запуске файла с помощью PSQL расширение сохраняет файл на диск перед выполнением. Если сохранить не удается, расширение отменяет операцию. Сохраните файл успешно перед просмотром выходных данных.