Thursday, April 8, 2010

Tips to resolve “Page P_ID1 was not seen in the scan...” Error Message

Tables in MS SQL Server contain thousand of records that are contained in more than one partitions. These partitions save data rows in either B-tree or heap structure. The table records saved in B-tree can be retrieved faster than in heap tree. The reason behind fast retrieval is that the data pages in B-tree are connected in a doubly-linked list. While the navigation process is faster in B-tree structure, the process might halt if any child page points to a wrong index page or is not pointing to any page. Such situations primarily occur when your database is corrupted. In such circumstances, a database user encounters an error message that makes the data saved in the table inaccessible. To access the records in such cases, the user can restore table from an updated backup or run DBCC CHECKDB command. However, if both the parameters fail to resolve, then the user needs to opt for a commercial SQL Database Recovery product.

Consider a practical example to elaborate the above problem where you encounter the below error message while accessing a MS SQL table:

“Table error: Object ID O_ID, index ID I_ID. Page P_ID1 was not seen in the scan although its parent P_ID2 and previous P_ID3 refer to it. Check any previous errors.”

This is a severity level 16 error message, that pops up and does not allow you to access the table records.

Cause:

The above error message appears when a child page (P_ID1) can not be seen even though the index page is pointing to the child page. This above situation occurs when the database is either logically or physically corrupted.

Resolution:

Corruption due to physical damages can be resolved by changing the damaged system component.
Corruption owing to logical reasons can be rectified by running DBCC CHECKDB command. But in case, the error message persists after executing DBCC CHECKDB command, then you will need to use third-party MS SQL Recovery tool to repair your table. Such SQL Repair application scan the database and repair it to the fullest.

SQL Recovery application is used to repair logically corrupted SQL database, regardless of its cause of corruption. The SQL Database Repair tool supports repair of every SQL Server database component built in MS SQL Server 2008, 20005, and 2000. It supports Windows 7, Vista, 2008, XP, 2003, and 2000.

No comments:

Post a Comment