Re: [HACKERS] SQL Triggers
От | darcy@druid.net (D'Arcy J.M. Cain) |
---|---|
Тема | Re: [HACKERS] SQL Triggers |
Дата | |
Msg-id | m0zMbFG-00006FC@druid.net обсуждение исходный текст |
Ответ на | Re: [HACKERS] SQL Triggers (jwieck@debis.com (Jan Wieck)) |
Ответы |
Re: [HACKERS] SQL Triggers
|
Список | pgsql-hackers |
Thus spake Jan Wieck > > darcy=> CREATE FUNCTION function_dead(int) > > darcy-> RETURNS int > > darcy-> AS 'UPDATE bid SET live = \'f\' WHERE item_id = $1; > > darcy'> SELECT 1 AS ignore_this' > > darcy-> LANGUAGE 'sql'; > > CREATE > > darcy=> CREATE TRIGGER trigger_dead BEFORE INSERT OR UPDATE > > darcy-> ON bid > > darcy-> FOR EACH ROW > > darcy-> EXECUTE PROCEDURE function_dead (item_id); > > ERROR: CreateTrigger: function function_dead () does not exist > > darcy=> SELECT function_dead(1); > > function_dead > > ------------- > > 1 > > (1 row) > > The arguments aren't right and the return type too. Trigger > procedures take no arguments in their definition and return > OPAQUE type. They really return a tuple of the table they are > actually fired for. Not sure I follow. The argument is an int (or int4 as it defaults to) and I tried various combos of int and int4 in the procedure definition As for the opaque type return, I get an error message when I try to create an SQL function returning opaque. The "SELECT 1 AS ignore_this" is taken straight from the examples. > Take a look at PL/pgSQL and it's docs which is already in the > CVS and will be shipped with 6.4. I have the current sources (I sup daily) but I couldn't find any examples of fcreate trigger. -- D'Arcy J.M. Cain <darcy@{druid|vex}.net> | Democracy is three wolves http://www.druid.net/darcy/ | and a sheep voting on +1 416 424 2871 (DoD#0082) (eNTP) | what's for dinner.
В списке pgsql-hackers по дате отправления: