From: | Dan Colish <dcolish(at)gmail(dot)com> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Subject: | SET CONSTRAINTS todo |
Date: | 2010-06-03 19:02:01 |
Message-ID: | 55C31350-E559-4DEB-9814-994FB7302D9C@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
I wanted to work on this todo item and I have a few questions about the semantics of it. Essentially, it is not possible to have more than one relname for a constraint, even though the comment in trigger.c says otherwise. I have used this code to test this:
<<<
CREATE TABLE products (
product_no integer CONSTRAINT must_be_different UNIQUE DEFERRABLE,
name text,
price numeric
);
CREATE TABLE products2 (
product_no integer CONSTRAINT must_be_different UNIQUE DEFERRABLE,
name text,
price numeric
);
>>>
which results in the following error:
<<<
ERROR: relation "must_be_different" already exists
>>>
Therefore prefixing them with a table name does not seem to make sense. Additionally, there is already the feature of prefixing the constraint relname with a schema to limit the search space.
Is the intention of the todo to allow the user to specify a tablename which limits the search path to that table's schema or is the feature to extend constraints to allow per table naming. In other words, would the feature allow multiple constraints of the same name in a schema since they would be table specific?
--Dan
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2010-06-03 19:16:08 | Re: Allow wal_keep_segments to keep all segments |
Previous Message | Florian Pflug | 2010-06-03 18:06:54 | Re: Did we really want to force an initdb in beta2? |