vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Thorsten Geelhaar wrote: > Hello I hope you can help me. > > My Problem is that in my programm an open Cursor statement failed, > sometimes. > > The error number 243 says : > The database server cannot set the file position to a particular row > within the file that represents a table. > > And the isam error 111 says: > The ISAM processor cannot locate the requested record. For C-ISAM > programs, no record was found with the requested index value or record > number, depending on the retrieval mode in use. > > > Could it be that if one try to open a cursor (after prepare and declare) > for a select, that no > records found, it ends in with a failure ? > > My is theory is that if someone delete all records between the commands > prepare, declare and open > the open cursor statement failed. Can you say if this theory is correct ? I've not seen anybody else step in, so I'll volunteer an answer, but with some trepidation since I've not done any testing. I think your theory is false. What happens between prepare and declare, or between declare and open, should have almost no bearing on what happens afterwards. What could cause trouble is something happening to a table you were using - eg a temporary table that was dropped and rebuilt. I don't think that's the error I'd expect, but... Or an index or something else that the query was relying on was no longer available. I still don't think the message is right, but... > And can you say me how a open cursor react if i delete some records > concurrently. It depends on the type of cursor (scroll or not, update or not), the row size, where the deleted records are, fetch buffer sizes, isolation levels, and various other things. It's rather complex. -- Jonathan Leffler #include <disclaimer.h> Email: jleffler@earthlink.net, jleffler@us.ibm.com Guardian of DBD::Informix v2003.04 -- http://dbi.perl.org/ |