Re: Conditional constraint? - Mailing list pgsql-general

From Joel Burton
Subject Re: Conditional constraint?
Date
Msg-id Pine.LNX.4.30.0203081442170.11421-100000@temp.joelburton.com
Whole thread Raw
In response to Conditional constraint?  (Nick Haw <nick.haw@operagrp.com>)
List pgsql-general
On Fri, 8 Mar 2002, Nick Haw wrote:

> Hi there, I have a problem that I can't fathom out.
>
> What I want to do is make a field so that it requires a value after a change
> in another field to a particular value. Is this possible with the ADD
> CONSTRAINT command, or will I have to make a custom function and use a
> trigger.

As in

CREATE TABLE library_patrons
  (id SERIAL PRIMARY KEY,
   age int NOT NULL,
   parents_phone VARCHAR(20) )

parents_phone could be blank, but if the patron is under 18, it should be
required?

You could make that the CONSTRAINT, however, when the age is changed, PG
won't automatically reconsider the constraint on parents_phone (unless new
data was changed in it)

So, yep, you'd have to use a trigger. Pretty straightforward to do,
though.

--

Joel BURTON  |  joel@joelburton.com  |  joelburton.com  |  aim: wjoelburton
Independent Knowledge Management Consultant


pgsql-general by date:

Previous
From: "Gregory Wood"
Date:
Subject: Re: Is vacuum full lock like old's vacuum's lock?
Next
From: Francisco Reyes
Date:
Subject: Re: Is vacuum full lock like old's vacuum's lock?