Creating a function if it's not there in Postgres

Started by Robert Jamesalmost 19 years ago2 messagesgeneral
Jump to latest
#1Robert James
srobertjames@gmail.com

I use a set of DDL scripts to automatically create the database for an app.

I need to create certain functions (from contrib), if they're not there
already. If they are there, I don't want to DROP or REPLACE them, since
they may be used in certain indexes and triggers.

Is there a way to only CREATE a function if it is not defined already?
Is there a simple way to see if the function is defined?

(I don't want to just try creating it and letting it fail, since the DDL
runs in a transaction).

Thank you.

#2Joshua D. Drake
jd@commandprompt.com
In reply to: Robert James (#1)
Re: Creating a function if it's not there in Postgres

Robert James wrote:

I use a set of DDL scripts to automatically create the database for an app.

I need to create certain functions (from contrib), if they're not there
already. If they are there, I don't want to DROP or REPLACE them, since
they may be used in certain indexes and triggers.

Is there a way to only CREATE a function if it is not defined already?
Is there a simple way to see if the function is defined?

(I don't want to just try creating it and letting it fail, since the DDL
runs in a transaction).

instead of create use CREATE OR REPLACE

Thank you.

--

=== The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive PostgreSQL solutions since 1997
http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
PostgreSQL Replication: http://www.commandprompt.com/products/