Re: [PERFORM] Trigger vs Rule

2006-04-03 Thread Ключников А . С .
* Niklas Johansson <[EMAIL PROTECTED]> [2006-04-03 11:04:25 +0200]: > > On 2 apr 2006, at 23.08, Niklas Johansson wrote: > > >CREATE OR REPLACE FUNCTION exec_device_type() RETURNS trigger AS $$ > > EXECUTE "SELECT device_type" || OLD.type || "(OLD.id)"; > >$$ LANGUAGE plpgsql; > > > Sorry,

Re: [PERFORM] Trigger vs Rule

2006-04-03 Thread Niklas Johansson
On 2 apr 2006, at 23.08, Niklas Johansson wrote: CREATE OR REPLACE FUNCTION exec_device_type() RETURNS trigger AS $$ EXECUTE "SELECT device_type" || OLD.type || "(OLD.id)"; $$ LANGUAGE plpgsql; Sorry, I was bitten by the bedbug there: a plpgsql function needs a little more than tha

Re: [PERFORM] Trigger vs Rule

2006-04-02 Thread Niklas Johansson
On 2 apr 2006, at 10.31, Ключников А.С. wrote: What is faster? One trigger with 1000 ELSE IF Or 1000 rules Faster to write and easier to maintain would be to write a trigger function in pl/pgsql which executes the right function dynamically: CREATE OR REPLACE FUNCTION exec_device_type() RE

[PERFORM] Trigger vs Rule

2006-04-02 Thread Ключников А . С .
Hi all. There are two tables: create table device_types ( id int, name varchar ); about 1000 rows create table devices ( id int, type int REFERENCES device_types(id), name varchar, data float ); about 20 rows And about 1000 functions: create function device_type1(int) returns .. create func