Thread: Error code mixup?

Error code mixup?

From
Peter Eisentraut
Date:
My copy of SQL99 assigns

most specific type mismatch        2200G
null value, no indicator parameter    22002

but elog.h has it set up the other way around.  Can someone clear this up
for me?

-- 
Peter Eisentraut   peter_e@gmx.net


Re: Error code mixup?

From
Tom Lane
Date:
Peter Eisentraut <peter_e@gmx.net> writes:
> My copy of SQL99 assigns
> most specific type mismatch        2200G
> null value, no indicator parameter    22002
> but elog.h has it set up the other way around.  Can someone clear this up
> for me?

Hoo, that's interesting.  I believe that I actually built the original
version of errcodes.h by editing the list of codes in the Ada-binding
part of the spec (part 2 13.4 rule 2e), which includes, in my draft copy,
      DATA_EXCEPTION_NULL_VALUE_NO_INDICATOR_PARAMETER:              constant SQLSTATE_TYPE :="2200G";
DATA_EXCEPTION_MOST_SPECIFIC_TYPE_MISMATCH:             constant SQLSTATE_TYPE :="22002";
 

But I see you're right that the table in section 22.1 has it the other
way around.  (Digs ... looks like the contradiction is still there in
the published spec.)  I wonder if there are any other inconsistencies?

Probably we should assume that the table in section 22.1 is
authoritative.
        regards, tom lane