Acue,
> Can I create working trigger on view?
>
> The problem is:
> I need a plpgsql function that execute on insert (or update,
> or delete) into view and knows the *OLD* and *NEW*.
> (Number of fields can be more than 16)
No. Create a RULE instead, which can be created on a view:
http://www.us.postgresql.org/users-lounge/docs/7.2/postgres/rules.html
BTW, you can increase the number of parameters accepted by functions by
re-compiling postgres. Also, 7.3 will have 32 as the default.
-Josh Berkus