Re: Command Line option misunderstanding
От | Ken Dibble |
---|---|
Тема | Re: Command Line option misunderstanding |
Дата | |
Msg-id | cfc006a2-6467-4e3f-a9ad-a71426413dd9@beckydibble.com обсуждение исходный текст |
Ответ на | Command Line option misunderstanding (punch-hassle-guise@duck.com) |
Список | pgsql-novice |
On 12/2/24 19:11, David G. Johnston wrote:
On Mon, Dec 2, 2024 at 4:50 PM wrote: The problem seems to be, as alluded to by others attempting to help me that the problem only exists when using -c on the same line a
DuckDuckGo did not detect any trackers. MoreOn Mon, Dec 2, 2024 at 4:50 PM <punch-hassle-guise@duck.com> wrote:The problem seems to be, as alluded to by others attempting to help me
that the problem only exists when using -c on the same line as -v.
The word "line" here belies further misunderstanding of how shell-executed commands work (the following "two line" command is still just one actual multiple-option command invocation).psql -v a=1 \-c 'select :a'It is best to just say "using -c and -v together".It is correct that we haven't pointed out, probably because for experienced people it seems obvious, that using -v and -c (or putting \set in -c) is a pointless thing to do. But psql doesn't go about trying to analyze intent here so, yes, you either get useless successful output in response or a confused server.That said...psql -v a=1 -c '\echo :a' postgres
1So it truly is just this specific SQL-related usage that is pointless, not combining -v and -c generally (I'm sure a useful backslash command can be substituted for \echo)
Related Question:
Documentation says:
command
must be either a command string that is completely parsable by the server (i.e., it contains no psql-specific features), or a single backslash command.$psql -h anna -d GT7 -c "\set a '11117' \\ select evt_id from events where sport_mode_evt_id=:a"
Really not caring that you are turning on autocommit...Anyway, what I believe you managed to accomplish here is to set the named variable "a" to the value <single-quote 11117 single-quote blah-blah-blah equals colon a>Then proceeded to do nothing with that variable since the -c command was done being evaluated in the "single backslash command" mode.David J.
Thanks for your time and explanations.
Ken
В списке pgsql-novice по дате отправления: