Re: Execute Shell script after insert - Mailing list pgsql-general

From Sam Mason
Subject Re: Execute Shell script after insert
Date
Msg-id 20081027185453.GQ2459@frubble.xen.chris-lamb.co.uk
Whole thread Raw
In response to Execute Shell script after insert  ("Anderson dos Santos Donda" <andersondonda@gmail.com>)
Responses Re: Execute Shell script after insert  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
On Mon, Oct 27, 2008 at 03:09:31PM -0300, Anderson dos Santos Donda wrote:
> Is there a way to execute a simple shell script in server after execute
> INSERT INTO ?

Yes; as other people have said most of the procedural languages allow
you to run code outside PG.  You'd just need to hook this procedure up
to a trigger inside postgres that ran when data was inserted.

As a rule, though, I'd tend not to do this.  The rationale being,
when something goes wrong (as code inevitably does) the database
will continue doing things automatically for you (like touching the
filesystem) when you're fighting against it trying to fix things.  I'd
be more tempted to write a stored procedure that inserted something
into a table and did the fiddling with the outside world.  That way you
can still write normal INSERT statements to fix up the database and not
worry about your triggers trying to be helpful.  I'd expect to stop
normal users from being able to INSERT data into the table, thus forcing
them (or, more accurately, the code running on their behalf) to use the
stored procedure.


  Sam

pgsql-general by date:

Previous
From: Andreas Jochem
Date:
Subject: Re: Execute Shell script after insert
Next
From: Hannes Dorbath
Date:
Subject: Re: EXECUTE in trigger functions.