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.