Dublicates pairs in a table. - Mailing list pgsql-sql

From Ries van Twisk
Subject Dublicates pairs in a table.
Date
Msg-id 000201c25d90$87230c10$6500000a@IT000
Whole thread Raw
Responses Re: Dublicates pairs in a table.  (Richard Huxton <dev@archonet.com>)
List pgsql-sql
Dear guys/girls,

I have a small question which I could not clearly find in the postgreSQL
manual.

if I create this table and index
CRAEATE TABLE test (id    SERIAL,c1    VARCHAR(32),c2    VARCHAR(32),c3    VARCHAR(32)
);

CREATE UNIQUE INDEX test_idx ON test(id, c1,c2);

what I try to archive here is that I don't want duplicate pais in my table:
example

INSET INTO test (c1,c2) VALUES('a', 'a');    -- Allowed
INSET INTO test (c1,c2) VALUES('b', 'b');    -- Allowed
INSET INTO test (c1,c2) VALUES('b', 'c');    -- Allowed
INSET INTO test (c1,c2) VALUES('a', 'a');    -- Not allowed since we already
have a duplicate ('a', 'a') pair
INSET INTO test (c1,c2) VALUES('b', 'c');    -- Not allowed since we already
have a duplicate ('b', 'c') pair

etc. etc. I think you get the idea...

What I want to know is that if this is smart do do, or is there a other
better way to make sure I don't insert duplicate pairs in my database.
I'm not sure if a stored procedure is better in my case since I don't really
need the index on columns c1 or c2.
I'm looking for performance technical answers here thus speed vs memory
comparisons. Ofcourse a pointer to a URL will also do..

Best Regards,
Ries van Twisk









pgsql-sql by date:

Previous
From: Ludwig Lim
Date:
Subject: Formatting zeroes
Next
From: Tom Lane
Date:
Subject: Re: "Inverting" a table, OLAP-style