Bruce Momjian <pgman@candle.pha.pa.us> writes:
> Tom Lane wrote:
>> The more I think about it, the more I think that two sets of function
>> names might not be such an awful idea. next_value(), curr_value(), and
>> set_value() seem like they'd work well enough. Then we'd just say that
>> nextval and friends are deprecated except when you need late binding,
>> and we'd be done.
> I don't like the val/value distinction (the added "ue" means what?).
> Perhaps next_seq/curr_seq/set_seq would work more cleanly. I never
> liked that the function names had no reference to "seq"uence in them.
That doesn't really respond to the "means what?" question --- which of
"nextval" and "next_seq" is the early binding form, and how do you
remember? For that matter, how do you even remember that they're
related? Still, I have no strong objection to those names, and am happy
to go with them if that will resolve the discussion.
> Didn't next_val() come from Oracle? Does it make sense to make new
> non-Oracle compatible commands for this, especially since Oracle
> probably does early binding? What would make more sense perhaps would
> be for next_val to do early binding, and a new function do late binding,
> perhaps next_val_str().
We already have the function to do late binding, namely nextval(text).
I see no percentage in inventing some random new name for a function
that's been there forever --- unless the new name adheres to some
standard, which these don't.
regards, tom lane