Du kan komma åt en del värden i plsh-utlösare.
- UPPDATERA erbjuder endast GAMLA
- INSERT erbjuder endast NYTT (duh)
- RADERA Jag testade inte
Så du får dessa värden med hjälp av argument, som $1, $2
Din funktion skulle se ut ungefär så här:
CREATE FUNCTION tarifador_func2() RETURNS TRIGGER
LANGUAGE plsh
AS $$
#!/bin/sh
/usr/bin/php /var/www/html/...regras.php $3 $6 $1
$$;
Lägg märke till att jag inte använde $1 $2 $3
, det beror på att plsh
tillägget dumpar ALLA kolumner till argument i den ordning de deklareras i din tabell. Så du kan göra något som INSERT INTO table1 (column3) VALUES (6);
och det kommer att vara under $3
i plsh
, förutsatt att detta är tredje kolumnen i tabellen.
Som en sidoanteckning är metadata för trigger tillgänglig via env vars.