Re: Trigger/Sequence headache

From: Stephan Szabo <sszabo(at)megazone(dot)bigpanda(dot)com>
To: "Foster, Stephen" <stephenlfoster(at)comcast(dot)net>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Trigger/Sequence headache
Date: 2006-02-12 23:10:33
Message-ID: 20060212150559.S97294@megazone.bigpanda.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql


On Sun, 12 Feb 2006, Foster, Stephen wrote:

> This is going to be one of those stupid problems of mine. I have an
> insert trigger setup to verify that duplicate or repeating information
> isn't storage in the table. If trigger function finds the information
> as a duplicate it returns a NULL and the information isn't added; that
> works. The problem I'm having is that it is incrementing the sequence
> counter even when the data isn't added. Is this something that I have
> to live with or should I be returning something other than a NULL?

The sequence is going to increment upon getting the value.

However, I think, if instead of using a default, you got the next value in
the trigger after you determined that it wasn't a duplicate and set the
field, it wouldn't increment for this case. This changes some other
behaviors a little (for example DEFAULT in updates as well), so you'd need
to see whether it'd be acceptable.

Of course, errors, rollbacks and deletes will still leave holes.

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Foster, Stephen 2006-02-12 23:25:20 Re: Trigger/Sequence headache
Previous Message Foster, Stephen 2006-02-12 22:27:48 Trigger/Sequence headache