Tuesday, February 9, 2010

Fixing “Table error: Cross object linkage...” Error Message

Pages in metadata structure of MS SQL Server database are either linked in a B-tree or heap tree format. These pages contain the records of different database components. In such situations, these pages instead of pointing the required pages, start pointing to a wrong page. The database records become inaccessible in case the SQL database gets corrupted or damaged. To access the records saved in the database components, an easy way is to restore the database objects from an updated backup. But, if in case the backup is not available, or backup file is not created, then you will need to repair the SQL database to access all its records. To do so, you will need to use advanced third-party SQL Recovery utility.

To briefly explain the above database corruption scenario, below is the error message that pops up when a SQL database table gets corrupted:

“Table error: Cross object linkage: Parent page P_ID1, slot S_ID1 in object ID O_ID1, index ID I_ID1, and page P_ID2, slot S_ID2 in object ID O_ID2, index ID I_ID2, next refer to page P_ID3 but are not in the same object.”

The above error message makes the data saved in the database table inaccessible. In additions, the user can not perform any operations, such as, addition, modifications, or deletion, on the records of that table. It is a severity level 16 error message.

Cause:

The above error message occurs when the page P_ID2 and page P_ID1's child page pointer in a B-tree, point to the page P_ID3 in some other object. This can happen either due to logical or physical corruption of SQL database.

Resolution:
To isolate the above error message and access the database table records, you will need to follow the below steps:
To isolate the error message, if caused due to physical corruption, change the damaged system component with a new component.
For error message caused due to logical damage, use the DBCC CHECKDB command with appropriate repair clause. But, if the problem sustains, then use SQL Database Repair software to repair the database. Such SQL Database Recovery utilities repair the database components by incorporating effective scanning algorithms.

Stellar Phoenix SQL Recovery is a repair utility that provides orderly repair of SQL Server 2008, 20005, and 2000 database components. The repairable components can be previewed and restored at user-specified location. The SQL Repair tool works on Windows 7, Vista, 2008, XP, 2003, and 2000 operating systems.

Resource Taken From :-
http://www.articlesengine.com/Article/Fixing--Table-error--Cross-object-linkage-----Error-Message/499304/1

No comments:

Post a Comment