hi,
also u have to UPDATE your IBATIS for using stored procedure. you just download IBATIS 1.7 from the net as u know it is a free source . that will also help to run ur stored procedure
Puneet Arya
Sven Boden <[EMAIL PROTECTED]> wrote:
Sven Boden <[EMAIL PROTECTED]> wrote:
What I'm trying to tell you is that normally you should not use
beforeFirst(), I have never used it in the last 5 years (some JDBC
drivers don't even support it). It should only be used if you want to
scroll back and forth through a ResultSet (where beforeFirst will set
you at the beginning of the ResultSet)....
Wouldn't it be logically that if you open a ResultSet it starts at the
first row and not an arbitrary (second) row. This is what all JDBC
drivers I used do... if the AS400 driver doesn't do it, I would consider
it a broken driver. And it would cause problems with iBATIS.
With "outside iBATIS" I meant from a query tool... Don't know what
supports AS400... DbVisualizer, WinSql, AQT, ... something that can
extract data from a database. My first hunch would be that your stored
procedure is wrong and you will get the same missing row in such a tool.
Regards,
Sven
Cornel Antohi wrote:
> Hi,
>
> What do you mean by "outside of iBATIS"? Directly from JDBC ... yes
> and I should do a rs.beforeFirst() in order to fetch the first row ...
> otherwise I will get the result starting from second row.
>
> Thank you,
> Cornel Antohi
>
> ----- Original Message ----- From: "Sven Boden" <[EMAIL PROTECTED]>
> To:
> Sent: Saturday, June 17, 2006 4:22 PM
> Subject: Re: DB2 As400 stored procedure with cursor
>
>
>>
>> iBATIS doesn't use "scrollable cursors", it doesn't keep state of the
>> ResultSet in between calls. So beforeFirst() should be irrelevant. If
>> iBATIS opens the ResultSet it will start by reading the first row,
>> then the next one, until the end, close the ResultSet and then
>> queryForList returns. On the other hand I've never done anything with
>> stored procedures on an AS400... so maybe it's a broken/non standard
>> thing for AS400 (which then won't work with iBATIS), in Oracle I
>> never had problems with it.
>>
>> But did you try to already try to run the query/stored procedure
>> outside of iBATIS?
>>
>> Regards,
>> Sven
>>
>> Cornel Antohi wrote:
>>
>>> Hi,
>>>
>>> Using pure JDBC (JT400) , stored procedures using CURSOR should be
>>> used like that in order to fetch the first row:
>>>
>>> ctmt = con.prepareCall("{call FPRPR_SEARCHPRODUCTS(?,?)}",
>>> ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
>>> ....
>>> rs.beforeFirst();
>>>
>>> Can iBATIS do that or should I use JDBC for this task? We are using
>>> iBATIS but such kind of stuff that cannot be done (or I do not know
>>> the correct iBATIS solution) are very painful.
>>>
>>> Thank you for your prompt answer,
>>> Cornel Antohi
>>>
>>>
>>>
>>> ----- Original Message ----- From: "Sven Boden" <[EMAIL PROTECTED]>
>>> To:
>>> Sent: Saturday, June 17, 2006 3:48 PM
>>> Subject: Re: DB2 As400 stored procedure with cursor
>>>
>>>
>>>
>>>> There's nothing in iBATIS that would do that. Can you check whether
>>>> you get the same results with your favorite query tool.
>>>>
>>>> Regards,
>>>> Sven
>>>>
>>>> Cornel Antohi wrote:
>>>>
>>>>
>>>>> Hi,
>>>>>
>>>>> I am using a stored procedure that opens a cursor and I am trying
>>>>> to obtain the results with queryForList(). Unfortunatelly I
>>>>> receive the results without the first row (first row it is
>>>>> skipped). Any solution to this issue?
>>>>>
>>>>> Thank you,
>>>>> Cornel Antohi
>>>>>
>>>>>
>>
>
>
>
Yahoo! India Answers: Share what you know. Learn something new Click here
Send free SMS to your Friends on Mobile from your Yahoo! Messenger Download now
