Search Postgresql Archives

Re: UNIQUE constraints on function results

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Markus,

* Markus Schiltknecht <markus@xxxxxxxxxx>, [2006-10-05 11:16 +0200]:
>  I've been trying to add a unique constraint on a row and a function 
>  result of a row. I.e.:
>  
>  CREATE TABLE test (
>  	id SERIAL PRIMARY KEY,
>  	t1 TEXT NOT NULL,
>  	t2 TEXT NOT NULL,
>  	UNIQUE (t1, lower(t2)));
>  
>  That fails with a syntax error (on 8.2beta1). While UNIQUE(t1, t2) works 
>  like a charm, it's not exactly what I want.
>  
>  I can easily create an index for my needs [1], why can I not add such a 
>  unique constraint?

You can create a unique index.

CREATE UNIQUE INDEX idx_name ON test (t1, lower(t2));

INSERT INTO test (t1, t2) VALUES ('some text', 'Other Text');

Trying to insert the following row:

INSERT INTO test (t1, t2) VALUES ('some text', 'other text');

you'll get a duplicate key error.

ciao,
    ema

Attachment: signature.asc
Description: Digital signature


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux