Конец командной строки PSQL изменен с => на (> - PullRequest
0 голосов
/ 04 июля 2018

Я пытался выполнить запрос, написанный из команды \ e, и сейчас я не могу выполнить какие-либо запросы, но могу выполнять команды в PSQL.

the problem at hand

И теперь, когда я это заметил, набранные мной команды теперь находятся в \ e.

state of \e

Проблема начинается, когда я закрываю \ e (попробуйте запустить его).

Ответы [ 2 ]

0 голосов
/ 04 июля 2018

Запрос psql изменяется в зависимости от того, какой ввод он ожидает дальше. Подсказка на самом деле настраиваема, как описано здесь , но значение по умолчанию для PROMPT2 («выдается, когда ожидается больше ввода при вводе команды») содержит %R, что объясняется как:

В приглашении 2% R заменяется символом, который зависит от того, почему psql ожидает большего ввода: - если команда просто еще не была завершена, но * если есть незавершенный / * ... * / комментарий, a одинарная кавычка, если есть незаконченная строка в кавычках, двойная кавычка, если есть незаконченный идентификатор в кавычках, знак доллара, если есть незаконченная строка в кавычках, или (если есть непревзойденная левая скобка.

Таким образом, приглашение (> говорит вам, что где-то в запросе вы открыли (, и psql все еще ожидает совпадения ), прежде чем анализировать ваш ввод.

0 голосов
/ 04 июля 2018

Вы открыли круглые скобки, но никогда не закрывали их, и не psql ожидает завершения оператора.

Попробуйте ввести );, чтобы закрыть скобки (и получить сообщение об ошибке).

Вы можете выйти psql с помощью \q, если вы полностью потеряны.

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