2011/2/22 Melvin Davidson
<melvin6925@yahoo.com>Dmitriy
>Why not use function which returns table and wrap the >logging (auditing) code in it ?
Because to use a trigger function, you need a trigger, and as previously stated, you cannot have a trigger on select. The same applies for a rule.
|
Yes, you can't. But why do you need a *trigger* function and trigger ?
Why not select via regular function ?
CREATE OR REPLACE FUNCTION public.test_select()
RETURNS TABLE(id integer, name text)
LANGUAGE sql
SECURITY DEFINER -- note here!
AS $function$
SELECT 1, 'dima' UNION ALL
SELECT 2, 'melvin'; -- just for example I use simple union query
$function$
You can revoke SELECT privileges on table and
give to some users privileges on function (to
prevent them from selecting from table directly).
--
// Dmitriy.