On Thu, Jul 14, 2011 at 10:10:28AM +0800, Craig Ringer wrote:
> On 14/07/2011 4:53 AM, Aleksey Tsalolikhin wrote:
> >The following bug has been logged online:
> >
> >Bug reference: 6117
> >Logged by: Aleksey Tsalolikhin
> >Email address: [email protected]
> >PostgreSQL version: 8.4.8
> >Operating system: CentOS 5.5 (64-bit)
> >Description: psql -c does not work as expected. a documentation bug?
> > a program bug?
> >Details:
> >
> >The psql man page says, in the section for the -c option:
> >
> > If the command string contains multiple SQL
> > commands, they are processed in a single
> > transaction
> >
> >However when I run a command string with multiple
> >SQL commands, apparently only the last one is
> >processed.
> >
> What's happening is that all of them are processed, but only the
> output for the last one is emitted. I agree that the documentation
> isn't clear about that, and I'm not sure whether or not that was the
> intended result.
>
> psql -c "CREATE TABLE test(x integer); INSERT INTO test(x) VALUES
> (1),(2),(3); SELECT version(); SELECT * FROM test;"
> x
> ---
> 1
> 2
> 3
> (3 rows)
>
>
> Comments anybody? Just fix the docs, or is this a behaviour issue?
I have added documentation for this behavior. Patch attached, and
backpatched to 9.2 and 9.1.
--
Bruce Momjian <[email protected]> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ It's impossible for everything to be true. +
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
new file mode 100644
index b6bf6a3..1ba5ea8
*** a/doc/src/sgml/ref/psql-ref.sgml
--- b/doc/src/sgml/ref/psql-ref.sgml
*************** PostgreSQL documentation
*** 99,105 ****
<command>BEGIN</>/<command>COMMIT</> commands included in the
string to divide it into multiple transactions. This is
different from the behavior when the same string is fed to
! <application>psql</application>'s standard input.
</para>
</listitem>
</varlistentry>
--- 99,106 ----
<command>BEGIN</>/<command>COMMIT</> commands included in the
string to divide it into multiple transactions. This is
different from the behavior when the same string is fed to
! <application>psql</application>'s standard input. Also, only
! the result of the last SQL command is returned.
</para>
</listitem>
</varlistentry>
--
Sent via pgsql-bugs mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs