On Nov 21, 2007 1:07 PM, Richard Huxton <dev@xxxxxxxxxxxx> wrote: > Scott Marlowe wrote: > > On Nov 21, 2007 12:21 PM, David Fetter <david@xxxxxxxxxx> wrote: > >> On Wed, Nov 21, 2007 at 11:10:15AM -0600, Scott Marlowe wrote: > >>> On Nov 21, 2007 10:49 AM, Richard Huxton <dev@xxxxxxxxxxxx> wrote: > >>>> Gauthier, Dave wrote: > >>>>> APparently, from "man psql", -c can do only one thing at a time. But you could do this with 2-3 commands (or 1 if you want to wrap the 2 up in a shell script or something). Here's an example... > >>>> [snip] > >>>>> psql --dbname mydb -c "\i create_try.sql;" > >>>>> psql --dbname mydb -c "select trythis('foo');" > >>>>> psql --dbname mydb -c "drop function trythis(varchar);" > >>>> Or just put everything in one file and use -f <filename> > >>> And from the more than one way to skin a cat department: > >>> > >>> cat my.sql | psql mydb > >>> psql mydb < my.sql > >> Should anything go wrong with either of these constructs, you don't > >> get the line number where it did, so the following is better: > > > > Umm, as I posted before, I DO get the line number. the output I get > > looks exactly the same as if I use -f. > > Richard posted an example of when he did get the same thing, but not > > one of where he didn't. > > (checks again). No, they're different: SNIP > The -f gives me line 12, from STDIN it doesn't. Ahhh, now I see. I assume that stdin acts the same as if you'd run psql and typed the commands in one at a time, hence the LINE1: at the beginning of that line. ---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster