cancel
Showing results for 
Search instead for 
Did you mean: 

iAnywhere.Data.SQLAnywhere.SAException (0x80004005): No current row of cursor

Former Member
0 Kudos
1,957

ado.net version 16.0.0.20764 (framework 4.5) Continued to raise for 3 hours (same method call) and them gone.

VolkerBarth
Contributor

So what is your question?

That error (SQLCODE -197) has the following explanation (taken from the docs😞

Probable cause

You attempted to perform an operation on the current row of a cursor, but the cursor is not positioned on a row. The cursor is before the first row of the cursor, after the last row, or is on a row that has since been deleted.

Former Member
0 Kudos

not relevant! i am not using cursor :-) Now the problem is more than an odd.

Former Member

Maybe it will help if you were to describe some things about 'the method( )' call you are making -OR- if it is on a class of your own design then maybe explain what it is attempting to do.

Under the covers of the .Net Framework APIs, anything that deals with the database will be done using Dynamic SQL and anything that returns data from any query will probably be using a cursor. So knowing more about what that interaction looks like can only help in identifying your question as being down to something more specific and basic.

If I had to guess, since this was persistent (for 3 hours) but transient (it went away) I would guess you had either:

  • a keyset plan opened and some rows were deleted by other actions (possibly on other connections)
  • or the result set is empty

But I must repeat that is only a guess. I could tell a lot more if I had access to a detailed request log from the time when/while this was occuring ... and some details about the applications code line.

Accepted Solutions (0)

Answers (0)