Folks, I just stumbled across a little problem that looks like this:
CREATE TABLE foo ( id SERIAL PRIMARY KEY, f_text TEXT NOT NULL ); CREATE UNIQUE INDEX uniq_foo_f_text ON foo(LOWER(TRIM(f_text))); COPY foo(f_text) FROM stdin; a b c \. Oh, shucks. I'd like to permute these. Lemme start a transaction: [EMAIL PROTECTED]> BEGIN; BEGIN [EMAIL PROTECTED]> UPDATE foo set f_text = 'a' where id=3; ERROR: duplicate key violates unique constraint "uniq_foo_f_text" Dang! Everything was going to be kosher at the end of the transaction, but I never got a chance. Is there some way to make the index check INITIALLY DEFERRABLE the way a regular column/table constraint could be? I'd much appreciate any insights into this :) Cheers, D -- David Fetter [EMAIL PROTECTED] http://fetter.org/ phone: +1 415 235 3778 Remember to vote! ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings