Как решить ошибку psql: список аргументов слишком длинный - PullRequest
0 голосов
/ 17 апреля 2020

Я работаю над bash скриптом с PostgreSQL. У меня есть эта строка:

psql -h $PGHOST -p $PGPORT -U $PGUSER -d $PGDATABASE -c "SELECT COUNT(*) FROM (${SQL%?}) AS query;" | grep '-' -A1 | grep -v '-' )

, когда я передаю небольшой запрос, он работает, однако с некоторыми запросами он выдает мне эту ошибку.

/usr/bin/psql: Argument list too long

Что означает эта ошибка? как мне увеличить размер списка аргументов?

1 Ответ

1 голос
/ 18 апреля 2020

Я думаю, что это, как правило, ограничение в жестком коде ОС.

Как вы устанавливаете переменную среды SQL? Вместо того, чтобы устанавливать SQL на гигантскую строку, а затем использовать psql -c "...", не могли бы вы получить генератор этой гигантской строки, просто направив ее в |psql?

...