From: | ilazaro at tekniker(dot)es ( Ignacio Lázaro ) |
---|---|
To: | |
Subject: | [Pljava-dev] PLJAVA Trigger Function more arguments |
Date: | 2005-11-02 14:21:19 |
Message-ID: | 5234B8D9C36F9E4D9B1AF01013708B6B0152C04D@txindoki.tekniker.es |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pljava-dev |
The concepts of 'old' and 'new' row is clear for me, my open question is:
Is there another way of executing a java class from PostgreSQL trigger or function different than the following?
> CREATE TRIGGER tu_elementos_instalacion_monitorizar_tr
> AFTER UPDATE
> ON elementos_instalacion_monitorizar
> FOR EACH ROW
> EXECUTE PROCEDURE sendudpmessagetr('valor');
>
> CREATE OR REPLACE FUNCTION sendudpmessagetr()
> RETURNS "trigger" AS
> 'tekniker.udpip.SendUdpMessage.sendudpmessagetr'
> LANGUAGE 'javau' VOLATILE;
> ALTER FUNCTION sendudpmessagetr() OWNER TO optemi;
Regards
Nacho
-----Mensaje original-----
De: Thomas Hallgren [mailto:thomas at tada.se]
Enviado el: mi?rcoles, 02 de noviembre de 2005 15:15
Para: Ignacio L?zaro
CC: pljava-dev at gborg.postgresql.org
Asunto: Re: [Pljava-dev] PLJAVA Trigger Function more arguments
Ignacio L?zaro wrote:
> Hello
>
> I have the table 'elementos_intalacion_monitorizar' with the fields 'value' and 'code'
> After one UPDATE of this table I want send a UDP message to a port of a IP with the code and value modified (only if the value has changed)
>
> I have a java class to send a UDP message and the required parameters are IP, port and code&value. IP and port are defined in a table named configuration
>
> So what I need, is to define a trigger that
> 1- check if the value of the code has really changed
> 2- get the ip and port from configuration table
> 3- execute the java class that send the UDP message with the required values
>
> What I have done
> 1- I have installed in postgreSQL the java class
> 2- I have defined the TRIGGER and FUNCTION explained before, but as I can understand with your last message and for my tests is that it is not possible get dinamically from a table the ip and port values inside the definition of the trigger
>
> My question at this stage : is there another way of executing a java class from PostgreSQL trigger or function?
>
>
A trigger has a concept of an 'old' and a 'new' row. What you're after
is the 'new' row, i.e.
ResultSet newRow = td.getNew();
String value = newRow.getString("value");
String code = newRow.getString("code");
Regards,
Thomas Hallgren
From | Date | Subject | |
---|---|---|---|
Next Message | Thomas Hallgren | 2005-11-02 14:31:33 | [Pljava-dev] PLJAVA Trigger Function more arguments |
Previous Message | Thomas Hallgren | 2005-11-02 14:15:03 | [Pljava-dev] PLJAVA Trigger Function more arguments |