Re: SQLException: Invalid precision value. Cannot be less than

From: Amit Handa <Amit(dot)Handa(at)Sun(dot)COM>
To: Kris Jurka <books(at)ejurka(dot)com>
Cc: Nebojsa Vasiljevic <nebojsa(at)sw4i(dot)com>, pgsql-jdbc(at)postgresql(dot)org, kmacclay(at)vantage(dot)com, bmaguire(at)vantage(dot)com, Amit Handa <Amit(dot)Handa(at)Sun(dot)COM>
Subject: Re: SQLException: Invalid precision value. Cannot be less than
Date: 2005-02-10 10:15:04
Message-ID: 420B3428.8030309@sun.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

That's right we *can't change the spec*.

But hold on guys, I can put a try catch block for this and prevent
the SQLException from being thrown in the implementation,
wherever it is being called in from *other classes*.
And hence we can go on.

But yes I can't change the spec class from doing that.
It's(return -1 for variable length data) is used by various JDBC drivers
that way.

Does that help ?

Also, Can you give me the stack trace of the exception ?
I just want to confirm the try catch block I put is at the right place
(i.e. exception will be caught in CachedRowSetImpl.java),
and works with you guys.

Further I am going to file a bug with our bug tracking system
and get some feedback internally, so that I keep things black and white.
You can view it over the web later as well.

thanks,
Amit Handa,
Sun Microsystems Inc.

PS: Kevin seems to have vanished ;)
I was trying to help him with this and some other problems but never
heard back,
though I am also slow at times to get back to him because of other
commitments.

Kris Jurka wrote:

>On Wed, 9 Feb 2005, Nebojsa Vasiljevic wrote:
>
>
>
>>[CachedRowSet doesn't like -1 precision values for numeric]
>>
>>
>
>This has been discussed, partially offlist, with Sun in the context of
>getColumnDisplaySize returning -1 for text and varchar with no length
>attribute fields. I've been waiting for a suggestion from Sun on what
>value to use, or if they will alter their code to remove this check.
>
>Your suggestion of using 0 passes their check, but still isn't legal:
>
>jurka=# create table nt (a numeric(0,0));
>ERROR: NUMERIC precision 0 must be between 1 and 1000
>
>The -1 value is intended to indicate we don't know or unlimited or
>similar and I don't particularly like it, but I've yet to hear a better
>suggestion.
>
>Kris Jurka
>
>
>

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Nebojsa Vasiljevic 2005-02-10 10:49:34 Re: SQLException: Invalid precision value. Cannot be less than zero
Previous Message Nebojsa Vasiljevic 2005-02-10 09:50:25 Re: SQLException: Invalid precision value. Cannot be less than zero