голосование
BASH
PHP
Javascript
HTML
Программы
Firebird
Майнинг
PostgreSQL
Хостинг
Железо
Ресурсы
GIT
SEO
Oracle
Python
Мобильные технологии
Ремонт
Mercurial
Заработок на сайте
Docker
Проголосуйте за категорию!
счётчик
Яндекс.Метрика

Запуск sql-запроса из файла и запись вывода в текстовой файл PostgreSQL

Покажу вам как работает консоль psql. Как записать вывод записей базы PostgreSQL в тестовой файл? Для этого вам нужно создать папку с нужными правами. Если прав не будет хватать, то консоль psql не сможет записать вывод в файл. Воспользуйтесь утилитой chown. Сначала создайте файл. Потом перенаправьте вывод записей в файл. Теперь выполните sql-запрос. Для примера используйте простой SELECT. Далее прочтите файл при помощи команды cat. Приступим! Если не знаете как войти в консоль psql, то читайте статью как создать базу данных постгрес на linux сервере Debian Ubuntu.


#накидываем права на папку:
#sudo chown пользователь:группа папка
sudo chown postgres:postgres /home/work/postgres/

#копируется sql в файл
\w /home/work/postgres/sql.sql

#запись вывода результата запроса в файл
\o /home/work/postgres/sql.sql

#выборка из данных, будет пустой вывод
select * from user;

#проверка записей в файле
cat sql.sql

Теперь обратная задача - выполнить sql-запросы постгрес из текстового файла. Сперва создайте файл с простым названием и поместите в него несколько запросов. Есть интересная особенность - sql-запросов в файле может быть несколько штук. Обязательно ставьте ; после каждого SQL-запроса. Далее прочтите файл и запустите SQL-запросы в консоли при помощи \i файл. Если SQL-запрос грамотно составлен, то вы увидите результат работы запроса SQL.


#создадим файл
touch now.sql

echo 'select now();
select now();
select now();
select now();
select now();' > now.sql 

#читаем из файла
\i /home/work/postgres/now.sql

#вывод:
now              
-------------------------------
2018-11-29 22:39:16.107061+00
(1 строка)
просмотры: 1154, уровень: лёгкий уровень, рейтинг: 0, дата: 2018-11-29 23:11:20
проголосовать:

Комментарии:






поиск
реклама
банеры
Мы предлагаем в аренду VPS серверы с выделенным IP-адресом, которые полностью эмулируют физический сервер.
http://trainingweb.ru/redirect/well_web_vps_kvm Аренда VPS KVM в Европе Мы предлагаем в аренду VPS серверы с выделенным IP-адресом, которые полностью эмулируют физический сервер.
http://trainingweb.ru/redirect/domains домен RU домен RU всего за 99 рублей
http://trainingweb.ru/redirect/pingadmin мониторинг сайтов сервис мониторинга работы сайта, мониторим HTTP, HTTPS, FTP, MYSQL, PostgreSQL, POP3, SMTP, IMAP