conditionally executing migration code

Started by Michael P. Soulieralmost 18 years ago2 messagesgeneral
Jump to latest
#1Michael P. Soulier
michael_soulier@mitel.com

I'm using some simple migration code to execute individual fragments of
SQL code based on the version of the schema. Is there a way to perform
an ALTER TABLE conditionally?

Example:

I want to add column foo to table bar, but only if column foo does not
exist already.

I'm trying to avoid such situations, but it's not always easy.

Thanks,
Mike
--
Michael P. Soulier <michael_soulier@mitel.com>, 613-592-2122 x2522
"Any intelligent fool can make things bigger and more complex... It
takes a touch of genius - and a lot of courage to move in the opposite
direction." --Albert Einstein

#2Scott Marlowe
scott.marlowe@gmail.com
In reply to: Michael P. Soulier (#1)
Re: conditionally executing migration code

Can't you just try to add the column and catch the error? If you're
in a transaction use a user defined function to run it an catch the
exception in pl/pgsql.

On Thu, Jun 5, 2008 at 12:15 PM, Michael P. Soulier
<michael_soulier@mitel.com> wrote:

Show quoted text

I'm using some simple migration code to execute individual fragments of SQL
code based on the version of the schema. Is there a way to perform an ALTER
TABLE conditionally?

Example:

I want to add column foo to table bar, but only if column foo does not exist
already.

I'm trying to avoid such situations, but it's not always easy.

Thanks,
Mike
--
Michael P. Soulier <michael_soulier@mitel.com>, 613-592-2122 x2522
"Any intelligent fool can make things bigger and more complex... It
takes a touch of genius - and a lot of courage to move in the opposite
direction." --Albert Einstein

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general