Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

java.sql error help needed!!!

 
Robin Richardson
Ranch Hand
Posts: 37
  • Mark post as helpful
  • send pies
  • 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
 
kichu kichu
Ranch Hand
Posts: 59
  • Mark post as helpful
  • send pies
  • 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
  • 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
 
Daniel Dunleavy
Ranch Hand
Posts: 276
  • Mark post as helpful
  • send pies
  • 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
  • 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
  • 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
  • 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
 
Mo Ibrahim
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • 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).]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic