On Thu, Jul 5, 2018 at 8:40 AM, Igor Korot <ikoro...@gmail.com> wrote:

> Hi, David,
>
> On Tue, Jul 3, 2018 at 1:46 PM, David G. Johnston
> <david.g.johns...@gmail.com> wrote:
> > On Tue, Jul 3, 2018 at 11:41 AM, Igor Korot <ikoro...@gmail.com> wrote:
> >>
> >>
> >> I presume threre is a query which check for the function/trigger
> >> existence? Something like:
> >>
> >> IF NOT EXIST(SELECT * FROM ) CREATE OR REPLACE FUNCTION....;
> >
> >
> > CREATE OR REPLACE is how you re-create a function that (whose
> > name/signature) might already exist; CREATE already assumes one doesn't
> > exist.
>
> Why do I need to re-create a function with exactly the same name and body?
> Can't I just check if such function exists?
>

You can, and depending on how often you intend to execute said code, it is
probably the better way.  It also requires pl/pgsql while CREATE OR REPLACE
"just works" as a single SQL command.  It seems easier to give you the
simple answer than to work out the details for the more complex one.

David J.

Reply via email to