Re: pgbench - allow to store select results into variables
Pavel Stehule <pavel.stehule@gmail.com>
From: Pavel Stehule <pavel.stehule@gmail.com>
To: Fabien COELHO <coelho@cri.ensmp.fr>
Cc: PostgreSQL Developers <pgsql-hackers@postgresql.org>
Date: 2016-07-09T12:19:29Z
Lists: pgsql-hackers
2016-07-09 11:19 GMT+02:00 Fabien COELHO <coelho@cri.ensmp.fr>: > > Hello Pavel, > > Why you are introducing \into and not \gset like psql does? >> > > Good question. > > The \into syntax I implemented is more generic, you can send a bunch of > queries together and extract the results, which makes sense from a client > perspective where reducing latency is important: > > SELECT 1, 2 \; SELECT 3; > \into one two three > I understand, but it looks little bit scary - but the argument of reducing latency can be valid > > However "gset" only works on the last SELECT and if all columns have a > name. This feature probably makes sense interactively, but for a script it > seems more useful to allow batch processing and collect results afterwards. > > Also a more subjective argument: I do not like the gset automagic naming > feature. I got more inspired by PL/pgSQL and ECPG which both have an "into" > syntax with explicit variable names that let nothing to guessing. I like > things to be simple and explicit, hence the proposed into. > the gset was originally designed differently - but now it is here - and it is not practical to have two different, but pretty similar statements in psql and pgbench. Regards Pavel > > -- > Fabien. >
Commits
-
pgbench: Remove \cset
- 25ee70511ec2 12.0 landed
-
pgbench: add \cset and \gset commands
- 6260cc550b0e 12.0 landed
-
Adjust pgbench to allow non-ASCII characters in variable names.
- 9d36a386608d 11.0 landed
-
Refactor script execution state machine in pgbench.
- 12788ae49e19 10.0 cited
-
Allow empty queries in pgbench.
- 6471045230f5 10.0 cited