Re: sub query constraint - Mailing list pgsql-general

From Dale Sykora
Subject Re: sub query constraint
Date
Msg-id 424A1C7E.7060600@czexan.net
Whole thread Raw
In response to Re: sub query constraint  (Yudie Pg <yudiepg@gmail.com>)
List pgsql-general
Yudie Pg wrote:
> CREATE OR REPLACE FUNCTION validate_actions_insert() RETRUNS OPAQUE AS '
CREATE OR REPLACE FUNCTION validate_actions_insert() RETURNS OPAQUE AS $$
> DECLARE
> rs RECORD;
>
> BEGIN
>   SELECT INTO rs * FROM user_data WHERE name = NEW.user and write_access = 't';
>
>   IF NOT FOUND THEN
>      RAISE EXCEPTION ''writing access forbidden for user '', NEW.user;
       RAISE EXCEPTION 'writing access forbidden for user %', NEW.user;
>   END IF;
>
>   RETURN NEW;
> END;
> ' LANGUAGE plpgsql;
  $$ LANGUAGE plpgsql;
>
> CREATE TRIGGER tg_actions BEFORE INSERT OR UPDATE ON actions
> FOR EACH ROW EXECUTE PROCEDURE validate_actions_insert();

Yugi,
    I made a few minor modifications as shown above and the trigger
function works great.  I think I'll also use triggers to keep a history
of record changes for auditing.

Thanks,

Dale

pgsql-general by date:

Previous
From: "Joshua D. Drake"
Date:
Subject: Re: Oracle Migration. Don't Care about the Corbomite Maneuver,
Next
From: Ken Johanson
Date:
Subject: Re: Possible to run the server with ANSI/ISO string