Пользователь postgresql определяет variabe для SQL-запроса - PullRequest
0 голосов
/ 30 апреля 2018

Я установил переменную в PSQL, как это abc=# \set test 'select * from tableName;' Я использую операционную систему Ubuntu, в которой установлен postgresql Когда я выхожу из терминала, он теряется. Так что же мне делать?

1 Ответ

0 голосов
/ 30 апреля 2018

Лучший способ - создать таблицу конфигурации для хранения всех ваших параметров.

Но, если вы хотите использовать переменные уровня ОС, вы можете передать переменные оболочки в psql

[pguser@test ~]$ export test_var="select 'Hello';"
[pguser@test ~]$ psql -A -t -q -d YOURDB -U youruser -p 5432 <<INP
${test_var}
INP
Hello

-A -t -q варианты только для подавления заголовков столбцов и вывода ошибок.

Чтобы установить переменную навсегда , поместите эту строку в ~/.bashrc , ~/.bash_profile или любой соответствующий файл инициализации для вашей оболочки.

export test='select * from tableName;'

Если вы хотите определить глобальные переменные в среде pg, вы можете сослаться на это: Возможно ли определить глобальные переменные в postgresql

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...