If I am inserting alot of records to multiple tables (using vb5 and ODBC) I
get the error

3307 - Process %d was expected to hold logical lock on page %1d

after approx 12000 - 13000 inserts ( the program will update the record if it is there already). The program does not use stored procedures just inserts and updates that are executed against the database. The rpogram also does not use and Begin trans or commit.

It is not an actual error that is causing it top fall over rather that one
of the indexes is becoming corrupt. This I can get from NT log, When I
rebuild the corrupted index I can go on for about another 12000 - 13000
records without the index becoming corrupt again and I have to rebuild it.

I Hope somebody can help me