| From: | Joshua Tolley <eggyknap(at)gmail(dot)com> |
|---|---|
| To: | Andreas <maps(dot)on(at)gmx(dot)net> |
| Cc: | pgsql-sql(at)postgresql(dot)org |
| Subject: | Re: Howto have a unique restraint on UPPER (textfield) |
| Date: | 2010-01-31 02:56:53 |
| Message-ID: | 4b64f184.9613f30a.5d13.01b2@mx.google.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-sql |
On Sun, Jan 31, 2010 at 03:26:14AM +0100, Andreas wrote:
> Hi,
>
> is there a way to define a unique restraint on UPPER (textfield)?
>
> E.g. mytable (
> name_id serial PRIMARY KEY,
> name varchar(255),
> UNIQUE ( upper (name) )
> )
>
> psql throws a syntax error because of the upper() function.
>
> I need to prohibit that 2 of strings like cow, Cow, CoW appears in
> the name-column.
Like this:
5432 josh(at)josh# create table c (d text);
CREATE TABLE
5432 josh(at)josh*# create unique index c_ix on c (upper(d));
CREATE INDEX
5432 josh(at)josh*# insert into c (d) values ('text');
INSERT 0 1
5432 josh(at)josh*# insert into c (d) values ('tExt');
ERROR: duplicate key value violates unique constraint "c_ix"
--
Joshua Tolley / eggyknap
End Point Corporation
http://www.endpoint.com
| From | Date | Subject | |
|---|---|---|---|
| Next Message | msi77 | 2010-01-31 08:02:17 | Re: Howto have a unique restraint on UPPER (textfield) |
| Previous Message | Andreas | 2010-01-31 02:26:14 | Howto have a unique restraint on UPPER (textfield) |