Re: How to watch for schema changes

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Igor Korot <ikorot01(at)gmail(dot)com>
Cc: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>, pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: How to watch for schema changes
Date: 2018-07-05 16:49:00
Message-ID: CAKFQuwZTLG89P6oeQdFskeTmsSgnNu=BZ_802q4wAhvnR7g+Fg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Thu, Jul 5, 2018 at 8:40 AM, Igor Korot <ikorot01(at)gmail(dot)com> wrote:

> Hi, David,
>
> On Tue, Jul 3, 2018 at 1:46 PM, David G. Johnston
> <david(dot)g(dot)johnston(at)gmail(dot)com> wrote:
> > On Tue, Jul 3, 2018 at 11:41 AM, Igor Korot <ikorot01(at)gmail(dot)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.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message David Gauthier 2018-07-05 16:58:21 As a table owner, can I grant "grant" ?
Previous Message Melvin Davidson 2018-07-05 16:14:40 Re: How to watch for schema changes