Re: CHECK Constraints - Mailing list pgsql-novice

From Michael Fuhr
Subject Re: CHECK Constraints
Date
Msg-id 20050422161928.GA50858@winnie.fuhr.org
Whole thread Raw
In response to CHECK Constraints  ("Van Ingen, Lane" <lvaningen@ESNCC.com>)
List pgsql-novice
On Fri, Apr 22, 2005 at 12:02:41PM -0400, Van Ingen, Lane wrote:
>
> If I were to specify a the following on a field named price in one
> expression, would it succeed?
>      CHECK (price = 1 OR price = 2 OR price = 3)

What happened when you tried it?  A simple test should answer the
question.

CREATE TABLE foo (
    id     serial PRIMARY KEY,
    price  integer NOT NULL CHECK (price = 1 OR price = 2 OR price = 3)
);

INSERT INTO foo (price) VALUES (1);
INSERT 0 1

INSERT INTO foo (price) VALUES (2);
INSERT 0 1

INSERT INTO foo (price) VALUES (3);
INSERT 0 1

INSERT INTO foo (price) VALUES (0);
ERROR:  new row for relation "foo" violates check constraint "foo_price_check"

INSERT INTO foo (price) VALUES (4);
ERROR:  new row for relation "foo" violates check constraint "foo_price_check"

--
Michael Fuhr
http://www.fuhr.org/~mfuhr/

pgsql-novice by date:

Previous
From: Bruno Wolff III
Date:
Subject: Re: CHECK Constraints
Next
From: "Walker, Jed S"
Date:
Subject: Re: Granting permission on a sequence to a group