RE: [GENERAL] Suggested "minor" change to psql - Mailing list pgsql-general

From Michael J Davis
Subject RE: [GENERAL] Suggested "minor" change to psql
Date
Msg-id 93C04F1F5173D211A27900105AA8FCFC29949C@lambic.prevuenet.com
Whole thread Raw
Responses Re: [GENERAL] Suggested "minor" change to psql  (Otavio Exel <oexel@economatica.com.br>)
List pgsql-general
Try:

    psql < mySchema.sql >& myOutput 2> myOutput.err


Michael Davis
BackOffice Development, TV Guide Networks
Office:         303-267-6809    Fax: 303-267-6889
Home Office:     303-460-7360    Fax: 303-460-7362
Pager:         303-461-4002
Email:        Michael.J.Davis@tvguide.com


> -----Original Message-----
> From:    Mark Dalphin [SMTP:mdalphin@amgen.com]
> Sent:    Wednesday, December 08, 1999 11:04 AM
> To:    pgsql-general@postgreSQL.org
> Subject:    [GENERAL] Suggested "minor" change to psql
>
> Hi,
>
> Ever since I began working with Postgres, I have had one little irritating
> problem with psql.  It may be that I am mis-using this program; if so, my
> suggestion is not helpful, however, if others have encountered this
> problem,
> perhaps the developers can look at a fix for 7.0?
>
> When I develop a new DB schema using psql, I usually first create a file,
> say
> "mySchema.sql". I then "createdb" the database, start up psql, and use the
> command "\i mySchema.sql" to load in my new schema. There will be,
> needless to
> say, several errors.  These fall nicely below the offending line and I can
> look
> at fixing them. I drop the DB, re-edit my SQL file and re-do the "\i"
> command.
>
> Sometimes, however, rather than using the "\i" command, I would like to
> simply
> load my schema directly into psql and capture the output on STDOUT (ie
> "psql <
> mySchema.sql >&  myOutput").  The problem that arises is that the errors
> and
> notices all come out on STDERR. I am not sure this is the right choice.
> Because
> of the lack of synchronization between STDOUT and STDERR, it becomes
> impossible
> to associate an SQL statement with either a CREATE or an ERROR message.
> The
> option, "-e", is supposed to echo the query, but it doesn't help.
>
> While I can see wanting to separate STDERR and STDOUT when one uses psql
> to run
> an SQL query against a DB from within a shell script, it makes it much
> more
> difficult when developing, and if I were to run several SQL queries into
> psql,
> exactly the same association problem would occur.
>
> Perhaps a combination of the function "isatty()" plus the -e flag would
> work? So
> that if STDOUT "isatty()" then echo errors to STDOUT, otherwise send them
> to
> STDERR. And if the -e flag is set, echo the queries to STDERR, so the
> correlation between ERROR, CREATE, etc and SQL could be made.
>
> Just my $0.02.
>
> Mark
>
> PS I only recently learned of the setting of the PAGER environment
> variable to
> make it so I needn't scroll back up 400 lines to find my errors; perhaps
> this
> could be made more prominent in the documentation as it would be a big
> help.
> Then again, perhaps I should completely re-read the docs to see if this is
> mentioned; I haven't done that for several releases now.
>
> --
> Mark Dalphin                          email: mdalphin@amgen.com
> Mail Stop: 29-2-A                     phone: +1-805-447-4951 (work)
> One Amgen Center Drive                       +1-805-375-0680 (home)
> Thousand Oaks, CA 91320                 fax: +1-805-499-9955 (work)
>
>
>
>
> ************

pgsql-general by date:

Previous
From: Mark Dalphin
Date:
Subject: Suggested "minor" change to psql
Next
From: Sanchez Diaz Sonia
Date:
Subject: Size of database