On 16/10/2010 17:15, Alexander Farber wrote:
Hello,

I'm trying to create a table, where md5 strings will serve as primary keys.
So I'd like to add a constraing that the key length should be 32 chars long
(and contain [a-fA-F0-9] only):

create table gps (
id varchar(32) primary key CONSTRAINT char_length(id)==32,
stamp timestamp DEFAULT current_timestamp,
pos point);

But it fails:

ERROR:  syntax error at or near "("
LINE 2: id varchar(32) primary key CONSTRAINT char_length(id)==32,
                                                          ^
Does anybody please know what's wrong here?

From (somewhat hazy) memory, I think the syntax is something like this:

     ... CONSTRAINT length_check CHECK char_length(id) = 32, ...

Note also that the equality operator is a single "=", not "==" as you have above.

Ray.


--
Raymond O'Donnell :: Galway :: Ireland
r...@iol.ie

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to