Thread: Question about "compound" queries.
Hello! Please, could somebody explain what the "compound" queries were created for? Maybe i'm calling them wrong. It's about queries like: SELECT 1 + 2 \; SELECT 2.0 AS "float" \; SELECT 1; Such queries can neither be prepared nor used in the extended protocol with ERROR: cannot insert multiple commands into a prepared statement. What are their advantages? And what is the proper name for such queries? "Compound" or something else? Would be very grateful for clarification. Best wishes, -- Anton A. Melnikov Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
On Mon, Oct 24, 2022 at 3:02 PM Anton A. Melnikov <aamelnikov@inbox.ru> wrote:
Hello!
Please, could somebody explain what the "compound" queries were created for?
Maybe i'm calling them wrong. It's about queries like:
SELECT 1 + 2 \; SELECT 2.0 AS "float" \; SELECT 1;
Such queries can neither be prepared nor used in the extended protocol with
ERROR: cannot insert multiple commands into a prepared statement.
What are their advantages?
And what is the proper name for such queries? "Compound" or something else?
Would be very grateful for clarification.
I suspect they came about out of simplicity - being able to simply take a text file with a bunch of SQL commands in a script and send them as-is to the server without any client-side parsing and let the server just deal with it. It works because the system needs to do those kinds of things anyway so, why not make it user-facing, even if most uses would find its restrictions makes it undesirable to use.
David J.
Thanks a lot for the reply and timely help! On 25.10.2022 01:36, David G. Johnston wrote: > I suspect they came about out of simplicity - being able to simply take a text file with a bunch of SQL commands in a scriptand send them as-is to the server without any client-side parsing and let the server just deal with it. It works becausethe system needs to do those kinds of things anyway so, why not make it user-facing, even if most uses would findits restrictions makes it undesirable to use. > > David J. > All the best, -- Anton A. Melnikov Postgres Professional: http://www.postgrespro.com The Russian Postgres Company