Reporting errors when a rule fails. - Mailing list pgsql-sql

From Saltsgaver, Scott
Subject Reporting errors when a rule fails.
Date
Msg-id 7283DE19D141D111AD0E00A0C95B19550248870E@mail2.aiinet.com
Whole thread Raw
List pgsql-sql
I have posted this question in the past and did not receive a response.

> Reporting errors when a rule fails.
> 
> I am currently design a database to be implemented using PostGreSQL 6.5.1.
> I have two tables with the following schema:
> 
> create table1 ( myId : serial, status int4 );
> 
> create table2 ( myId : serial, parentId : int4, status );
> 
parentId is a foreign key into table1.

> I created a function that checks to make sure that a parent exists in
> table1.  Not sure if this is the best way, suggestions welcome.
> 
> create function parent_exists(int4) returns boolean as 'select
> int4eq(count(*), 1) from table1 where table1.myId = $1' language 'sql'
> 
> I then created a rule to reject insertions into table2 if a parent does
> not exists in table1.
> 
> create rule validate_parent_exists as on insert to table2 where
> parent_exists(new.parentId) = false do instead nothing
> 
> Is there a way to return an error to the caller, who attempted the insert
> into table2 where the parent does not exists in table1?
> 
> As mentioned, if there is a better way to implement this functionality,
> suggestions are welcome.
> 
> Thanks,
> Scott Saltsgaver
> Applied Innovation Inc.
> scottsa@aiinet.com


pgsql-sql by date:

Previous
From: Dutt Kalapatapu
Date:
Subject: Question on Inheritance and Primary Keys.
Next
From: Jason Uhlenkott
Date:
Subject: security: escaping user-supplied data