Как я могу скомпилировать функции Postgresql (pl/pgsql) из Sublime?
Есть ли способ скомпилировать pl/psql-функции из Sublime Text 2?
3 ответа
Да, ты можешь. Чтобы этот ответ работал, пользователь вашей сети должен иметь доступ к базе данных. Способ сделать это - создать новую систему сборки в Sublime для postgresql. Вы можете сделать это, нажав Инструменты> Система сборки> Новая система сборки.... Затем замените текст сборки по умолчанию на:
{
"path": "C:/Program Files (x86)/pgAdmin III/1.20/",
"cmd": ["psql.exe", "-f", "$file", "postgresql://db-staging-1:5432/mydbname"],
"selector": "source.postgresql",
"shell": true
}
Путь: это должно быть расположение вашего исполняемого файла psql.exe. Обратите внимание, если этот путь находится в пути переменных среды, эта строка не нужна.
CMD: это то, что будет запускаться из командной строки. Я также включил информацию о своем подключении здесь. Вам нужно будет заменить его на путь к серверу и номер порта для вашей базы данных. Обратите внимание, если у вас возникли проблемы с запуском сборки, самый простой способ отладить то, что он на самом деле пытается запустить, это добавить echo в начале этой строки:
"cmd": ["echo", "psql.exe", "-f", "$file", "postgresql://db-staging-1:5432/mydbname"],
Теперь вывод вашей сборки будет именно тем, что он пытается запустить в командной строке. Если то, что он выводит здесь, не работает в вашей командной строке, то вам нужно изменить его на что-то, что будет.
Селектор: это устанавливает сборку по умолчанию для файлов postgresql.
Оболочка: Обрабатывает команду как скрипт оболочки.
Теперь вы можете выбрать вашу сборку postgresql в меню Инструменты> Система сборки. После этого простые Ctrl+B скомпилируют функции pl/pgsql в вашу базу данных! Обратите внимание, что теперь и обычный SQL можно запускать с вашей базой данных Postgresql.
Если вы регулярно взаимодействуете с несколькими базами данных одновременно, см. Эту статью как хороший справочник по настройке соединений с несколькими базами данных: как создать систему сборки для PostgreSQL
Другие параметры сборки Sublime text можно найти здесь: http://sublimetext.info/docs/en/reference/build_systems.html
С помощью этих команд добавьте файл New Build System и сохраните его.
{
"cmd": ["psql", "-d", "your-database name",
"-U", "postgres",
"-f", "$file"],
"word_wrap": "false"
}
Я на самом деле только что выпустил плагин (называемый DB1), который позволяет вам сделать это. Вы можете динамически подключаться и выполнять запросы и функции к базе данных PostgreSQL или MySQL (я также добавляю больше баз данных). Крутая часть в том, что вам не нужно ничего устанавливать на свой компьютер (кроме Sublime Text).
Все, что вам нужно сделать, это установить DB1 через управление пакетами, а затем в представлении вы можете запустить команду DB1: Connect
подключиться к вашей базе данных. Затем вы можете выполнить SQL в этом представлении через один из DB1: Execute
команды.
Вы также можете просто открыть функцию PSQL (если она сохранена в файле) и выполнить весь файл.
Чтобы увидеть, как это работает, вы можете посетить сайт DB1 или документацию. Дайте мне знать, если у вас есть какие-либо вопросы по этому поводу!