Thread: Change in parameters' order in prepared statement??

Change in parameters' order in prepared statement??

From
Andres Olarte
Date:
I recently updated the driver to the latest CVS version, and found a
change in the way parameters are handled.  Before, the first parameter
was 1, as in:

update.setInt(1,cbid);

But now it's 2, as in:

update.setInt(2,cbid);

I'm using only IN parameters to call a prepared SELECT. Is this the
correct behaviour? Is it going to stay this way?

Re: Change in parameters' order in prepared statement??

From
Oliver Jowett
Date:
Andres Olarte wrote:
> I recently updated the driver to the latest CVS version, and found a
> change in the way parameters are handled.  Before, the first parameter
> was 1, as in:
>
> update.setInt(1,cbid);
>
> But now it's 2, as in:
>
> update.setInt(2,cbid);
>
> I'm using only IN parameters to call a prepared SELECT. Is this the
> correct behaviour? Is it going to stay this way?

This sounds like a bug -- can you provide a more detailed testcase?

-O

Re: Change in parameters' order in prepared statement??

From
Oliver Jowett
Date:
Oliver Jowett wrote:
> Andres Olarte wrote:
>
>>I recently updated the driver to the latest CVS version, and found a
>>change in the way parameters are handled.  Before, the first parameter
>>was 1, as in:
>>
>>update.setInt(1,cbid);
>>
>>But now it's 2, as in:
>>
>>update.setInt(2,cbid);
>>
>>I'm using only IN parameters to call a prepared SELECT. Is this the
>>correct behaviour? Is it going to stay this way?
>
>
> This sounds like a bug -- can you provide a more detailed testcase?

Per off-list discussion this seems to be a bug that affects non-{call}
queries prepared via prepareCall() only; if prepareStatement() is used,
it works fine. I haven't dug deeper, but perhaps this is a bug
introduced by the OUT parameter support.

-O