Re: Re: Re: RANDOM function?

Einar Karttunen <ekarttun@cs.helsinki.fi>

From: Einar Karttunen <ekarttun@cs.Helsinki.FI>
To: Neal Lindsay <neal.lindsay@peaofohio.com>
Cc: <pgsql-novice@postgresql.org>
Date: 2001-07-31T13:27:39Z
Lists: pgsql-novice
On Tue, 31 Jul 2001, Neal Lindsay wrote:

> I think that what you want to do is create a trigger (or rule?) that pulls
> up your random number and then checks to see if it exists already.  I
> haven't used triggers yet, but it should not be too hard.  Also, what
> happens when you declare a column unique, and a function like random()
> tries to give it a non-unique number?
>
This can be accomplished very easily.

CREATE TABLE tbl (
	col integer default (random()*2147483647) unique,
	col2 text
	);

INSERT INTO tbl (col2) VALUES ('the value of col2');

the insert will fail if the number is not unique then just perform it
anew.

- Einar Karttunen