From: | David Fetter <david(at)fetter(dot)org> |
---|---|
To: | Scott Marlowe <scott(dot)marlowe(at)gmail(dot)com> |
Cc: | Richard Huxton <dev(at)archonet(dot)com>, "Gauthier, Dave" <dave(dot)gauthier(at)intel(dot)com>, Andreas Kretschmer <akretschmer(at)spamfence(dot)net>, pgsql-general(at)postgresql(dot)org |
Subject: | Re: loading a funtion script from a file |
Date: | 2007-11-21 18:21:12 |
Message-ID: | 20071121182112.GA18991@fetter.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Wed, Nov 21, 2007 at 11:10:15AM -0600, Scott Marlowe wrote:
> On Nov 21, 2007 10:49 AM, Richard Huxton <dev(at)archonet(dot)com> 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:
psql -1 -f my.sql
This ensures that the entire thing is run in one transaction, and when
anything goes wrong, you'll know the line number where it did.
Transactional DDL invaluable for changing schemas :)
Cheers,
David.
--
David Fetter <david(at)fetter(dot)org> http://fetter.org/
Phone: +1 415 235 3778 AIM: dfetter666 Yahoo!: dfetter
Skype: davidfetter XMPP: david(dot)fetter(at)gmail(dot)com
Remember to vote!
Consider donating to Postgres: http://www.postgresql.org/about/donate
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2007-11-21 18:23:39 | Re: Restart a sequence regularly |
Previous Message | Reg Me Please | 2007-11-21 18:19:46 | Re: Table filter |