Re: [GENERAL] A script which drops a column

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Alain TESIO <tesio(at)easynet(dot)fr>
Cc: pgsql-general(at)postgreSQL(dot)org
Subject: Re: [GENERAL] A script which drops a column
Date: 1999-11-26 04:36:42
Message-ID: 199911260436.XAA26312@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

[Charset iso-8859-1 unsupported, filtering to ASCII...]
> Hello,
>
> You may be interested by a script which drops a column as this
> feature isn't supported by Postgresql. I guess it could be easier
> and nice in Perl or something similar but I'm using what I know.
>
> The parameters are in that order :
>
> the name of the database
> the table
> the column to drop
>
> Alain
>
> #!/bin/sh
>
> psql -d $1 -c "\d $2" | awk 'BEGIN { keep=1 } /+-/ { keep=1-keep } { if
> (keep) { print } }' | grep -v "\-\-" | grep -v "Table *=" | grep -v " $3 " |
> sed "s/| \([^ ]*\).*/\1/" | tr -s \\012 "," | sed "s/,$//" | sed
> "s/\(.*\)/select \1 into temp tmp_drop_column from $2 ; drop table $2 ;
> select * into $2 from tmp_drop_column;/" > tmp_sql_drop_column
> psql -d $1 -f tmp_sql_drop_column
> rm tmp_sql_drop_column

The fact is that internally this is exactly what we would have to do to
drop a column. Now that we have temp tables, maybe someone could code
up some C to do this, or just an pg_exec_query_dest() call to do the
job.

--
Bruce Momjian | http://www.op.net/~candle
maillist(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Vadim Mikheev 1999-11-26 05:46:33 Re: [GENERAL] drop/rename table and transactions
Previous Message Mike Mascari 1999-11-26 04:26:02 Re: [HACKERS] Re: [GENERAL] drop/rename table and transactions