• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

java.sql error help needed!!!

 
Ranch Hand
Posts: 37
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Can anyone explain what this means and what I should be looking for to correct the problem?
java.sql.SQLException: ORA-01002: fetch out of sequence
I understand that it is an Oracle error as well as a SQL exception error
 
Ranch Hand
Posts: 59
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,
Are you connecting to the database through jsp or servlets?If yes post that code ,running of which causes this error.
regards,kichu
 
Robin Richardson
Ranch Hand
Posts: 37
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I am not connecting either way, I am trying to pull info from one database to another using getters and setters.
I am not sure where the error is located, except from this point down in the program:

try{
DriverManager.registerDriver( new oracle.jdbc.driver.OracleDriver());
con = DriverManager.getConnection(URL, UserName, Password);
stmt = con.createStatement();
orars = stmt.executeQuery(query);
orars.next();
while(orars.next()) {
System.out.println(" ");
}
System.out.println("Successful");
}
catch(SQLException e){
System.out.println("Unsuccessful" + e);
}
}
Any ideas?
Thanks
 
Ranch Hand
Posts: 276
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
If you don't have any data returned and you do the second next() without checking the result of the first, that may be the problem.
Dan
 
Robin Richardson
Ranch Hand
Posts: 37
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Data is being returned from another database, and I am trying to send that data to the Oracle database.
Any ideas?
Thank you
Robin
 
Daniel Dunleavy
Ranch Hand
Posts: 276
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Robin,
The code above is executing a query which reads the "other database", and this other database is an Oracle database, right?
Remove the next() before the while(next()) and tell me if you still get the error.
Thanks
Dan
[This message has been edited by Daniel Dunleavy (edited July 11, 2001).]
 
kichu kichu
Ranch Hand
Posts: 59
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hai,
orars.next();
while(orars.next())
In the above part there is no need for the statement "orars.next()".
SO remove that statement.Only "while(orars.next())" is required.
This anyway helps in pointing to next record in the database.
try it and see if it works.
kichu
 
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,
This is the official Oracle error definition for the error you have reported:
01002, 00000, "fetch out of sequence"
*Cause: This error means that a fetch has been attempted from a cursor which is no longer valid. Note that a PL/SQL cursor loop implicitly does fetches, and thus may also cause this error.
There are a number of possible causes for this error, including:
1) Fetching from a cursor after the last row has been retrieved
and the ORA-1403 error returned.
2) If the cursor has been opened with the FOR UPDATE clause,
fetching after a COMMIT has been issued will return the error.
3) Rebinding any placeholders in the SQL statement, then issuing
a fetch before reexecuting the statement.
*Action:
1) Do not issue a fetch statement after the last row has been
retrieved - there are no more rows to fetch.
2) Do not issue a COMMIT inside a fetch loop for a cursor
that has been opened FOR UPDATE.
3) Reexecute the statement after rebinding, then attempt to
fetch again.
See if you can solve the problem from the SQL side.
I noticed that your java code has two successive calls for next(). This could be a problem. I believe you can get rid of the one before the while loop.
-mohamed
[This message has been edited by Mo Ibrahim (edited July 12, 2001).]
 
Did you ever grow anything in the garden of your mind? - Fred Rogers. Tiny ad:
a bit of art, as a gift, that will fit in a stocking
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic