On Fri, 30 Jun 2006, Thomas Hallgren wrote:
> Kris Jurka wrote:
>>
>> [what to do about precision for non-numeric types]
>>
> I think the current -1 is reasonable for non numeric types. For the numeric
> types however, the interpretation should be that 0 is unlimited. A numeric
> should never return -1 and should accept setPrecision(colidx, 0) as 'no
> limit', i.e.
>
> 0 = unlimited
> -1 = not applicable
>
> The rationale is that a) stating that a varchar has zero decimal digits is
> wrong since it doesn't have any notion of decimal digits, and b) a precision
> of zero for a numeric doesn't make sense when interpreted verbatim.
>
The latest javadocs have clarified what they expect precision to mean for
non-numeric datatypes.
http://download.java.net/jdk6/docs/api/java/sql/ResultSetMetaData.html#getPrecision(int)
I've adjusted the driver to follow the new rules and not return -1
anymore.
Kris Jurka