<br><br><div><span class="gmail_quote">On 8/13/07, <b class="gmail_sendername">Josh More</b> &lt;<a href="mailto:morej@alliancetechnologies.net">morej@alliancetechnologies.net</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Are you defining your functions before you call them as triggers?&nbsp;&nbsp;I<br>remember having that issue when I did this years ago.</blockquote><div><br><br>I tried creating the trigger first, but it said the function didn&#39;t exist.
<br>

<br>
Josh suggested these 2 commands off list:<br>
<br>
create function plpgsql_call_handler () returns opaque as &#39;/usr/lib/pgsql/plpgsql.so&#39; language &#39;C&#39;;<br>
create trusted language &#39;plpgsql&#39; handler plpgsql_call_handler lancompiler &#39;PL/pgSQL&#39;;<br>
<br>
After executing those 2 commands, I was able to create the
function and the trigger.&nbsp; But when I update the database, the
last_updated field isn&#39;t set.&nbsp; Here&#39;s what I have:<br>

<br>

CREATE FUNCTION set_last_update() RETURNS opaque AS &#39;<br>

BEGIN<br>

NEW.last_updated:=now();<br>

RETURN NEW;<br>

END;<br>

&#39; LANGUAGE &#39;plpgsql&#39;;<br>

<br>

CREATE TRIGGER set_last_update AFTER INSERT OR UPDATE ON people FOR EACH ROW EXECUTE PROCEDURE set_last_update();<br><br><span class="gmail_quote">I&#39;ve
tried changing now() to &#39;&#39;now&#39;&#39; (2 single quotes before and after) like
it shows in the postgres documentation online, but that doesn&#39;t work.&nbsp;
I tried changing it to double quotes, and I got an unterminated quote
error.<br>
<br>
I&#39;m sure there&#39;s something simple I&#39;m missing.<br><br><br></span>&nbsp;<br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
-Josh More, RHCE, CISSP, NCLP, GIAC<br> <a href="mailto:morej@alliancetechnologies.net">morej@alliancetechnologies.net</a><br> 515-245-7701<br><br>&gt;&gt;&gt; &quot;Tim Wilson&quot; &lt;<a href="mailto:tim_linux@wilson-home.com">
tim_linux@wilson-home.com</a>&gt; 08/13/07 11:01 PM &gt;&gt;&gt;<br>That&#39;s one of the examples I was talking about.&nbsp;&nbsp;The function that is<br>created in the example returns type &quot;trigger&quot; (quotes added for<br>
emphasis).<br>When I try that in my version, it says &#39;parse error at or near<br>&quot;trigger&quot;&#39;.<br>Another example said to use void, another said opaque.&nbsp;&nbsp;All caused the<br>parser to complain.<br><br>On 8/13/07, Kevin C. Smith &lt;
<a href="mailto:kevin@linuxsmith.com">kevin@linuxsmith.com</a>&gt; wrote:<br>&gt;<br>&gt; On Mon, 2007-08-13 at 22:02 -0500, Tim Wilson wrote:<br>&gt; &gt; I&#39;m using Postgres 7.1.3, and I&#39;m trying to set up a trigger.&nbsp;&nbsp;I
<br>have<br>&gt; &gt; a last_updated column on all of my tables, that is of type<br>timestamp.<br>&gt; &gt; I want to set the field every time the record is updated.&nbsp;&nbsp;I thought<br>a<br>&gt; &gt; trigger would be best for that, but every example I find via Google
<br>&gt; &gt; doesn&#39;t work.&nbsp;&nbsp;One said to create a function that returned type<br>&gt; &gt; TRIGGER, another said type VOID, neither of which worked.&nbsp;&nbsp;Every<br>&gt; &gt; example I find uses one of those return types.&nbsp;&nbsp;Anyone have any
<br>&gt; &gt; ideas?<br>&gt;<br>&gt; I haven&#39;t tried triggers with postgresql, but I think it&#39;s a two<br>&gt; step thing in most cases. Write a function, then create a trigger<br>&gt; to call that function on insert or update.
<br>&gt;<br>&gt; Try:<br>&gt; <a href="http://www.postgresql.org/docs/8.2/static/triggers.html">http://www.postgresql.org/docs/8.2/static/triggers.html</a><br>&gt; <a href="http://www.postgresql.org/docs/8.2/static/plpgsql.html">
http://www.postgresql.org/docs/8.2/static/plpgsql.html</a><br>&gt;<br>&gt; Religion is regarded by the common people as true, by the wise as<br>false,<br>&gt; and by the rulers as useful. --- Lucius Annaeus Seneca<br>&gt;
<br>&gt; _______________________________________________<br>&gt; Cialug mailing list<br>&gt; <a href="mailto:Cialug@cialug.org">Cialug@cialug.org</a><br>&gt; <a href="http://cialug.org/mailman/listinfo/cialug">http://cialug.org/mailman/listinfo/cialug
</a><br>&gt;<br><br><br><br>--<br>Tim<br><br>_______________________________________________<br>Cialug mailing list<br><a href="mailto:Cialug@cialug.org">Cialug@cialug.org</a><br><a href="http://cialug.org/mailman/listinfo/cialug">
http://cialug.org/mailman/listinfo/cialug</a><br></blockquote></div><br><br clear="all"><br>-- <br>Tim