Could not retrieve row from logical page %Id via RID because the entry in the offset table (=%d) for that RID (=%d) is less than or equal to 0.
This error occurs when an object to which this row belongs is corrupt. The corruption was detected during the reading of a specific row from that logical page. This corruption can occur as a result of:
Run DBCC CHECKDB and DBCC NEWALLOC to determine the full extent of the corruption. Also check the error log for other errors such as 25xx messages, which often accompany this error.
If DBCC commands issue other corruption messages, resolve those messages first; that may take care of this error. If it doesn't, determine which table is corrupt by examining the page in the error message. For additional information about associating a page with an object, see Chapter 24, "Additional Problem-solving Techniques." If the page is associated with an index, you may be able to resolve the problem by dropping and then re-creating the index. If the page is a data page and a clean current backup is available, restore the database from the backup.
If no backup is available, try to select the table into another table or bulk copy data out of the table, drop the table, re-create it, and then select data back in.
If this error occurs during recovery, it indicates that the syslogs table is corrupted. The database will be marked as suspect. Restore the database from a clean backup. If the page was found to be associated with syslogs, running the dump tran with no_log statement may resolve this problem; then run DBCC checkdb and dbcc newalloc. If the database is clean, dump the database immediately.
If you suspect a hardware problem, run hardware diagnostics and correct any problems. You might find it beneficial to perform a completely new setup, including reformatting the disk drives and reinstalling the operating system. This eliminates the possibility that a .dll or .exe program is corrupted. Also examine the Windows NT event log to see if the error occurred as the result of hardware failure.
Finally, be sure that your system does not have write caching enabled on the disk controller. If you suspect this to be the problem, contact your hardware vendor.