[Fwd: [HACKERS] Coerce to Domain]

From: Rod Taylor <rbt(at)rbt(dot)ca>
To: PostgreSQL Patches <pgsql-patches(at)postgresql(dot)org>
Subject: [Fwd: [HACKERS] Coerce to Domain]
Date: 2003-01-17 18:56:39
Message-ID: 1042829798.57601.16.camel@jester
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

Patch moves evaluation of the domain (seek for list of constraints) out
of the parser and into the executor.

Note that in the below test the domain isn't on the table -- but is in
the view which shows rules are altered appropriately for the domain
change.

-- Confirm ALTER DOMAIN with RULES.
create table domtab (col1 integer);
create domain dom as integer;
create view domview as select cast(col1 as dom) from domtab;
insert into domtab (col1) values (null);
insert into domtab (col1) values (5);
select * from domview;
col1
------

5
(2 rows)

alter domain dom set not null;
select * from domview; -- fail
ERROR: Domain dom does not allow NULL values
alter domain dom drop not null;
select * from domview;
col1
------

5
(2 rows)

alter domain dom add constraint domchkgt6 check(value > 6);
select * from domview; --fail
ERROR: ExecEvalConstraintTest: Domain dom constraint domchkgt6 failed
alter domain dom drop constraint domchkgt6 restrict;
select * from domview;
col1
------

5
(2 rows)

--
Rod Taylor <rbt(at)rbt(dot)ca>

PGP Key: http://www.rbt.ca/rbtpub.asc

Attachment Content-Type Size
dbdomaincon.patch text/x-patch 47.2 KB

Responses

Browse pgsql-patches by date

  From Date Subject
Next Message Neil Conway 2003-01-17 21:06:35 doc improvements
Previous Message Tom Lane 2003-01-16 18:47:48 Re: fix for PL/PgSQL segfault