Este problema es causado al tratar de eliminar una fila de la base de datos. SQL Server entrega el siguiente mensaje de error:
"Table error: Database ID X, object ID XXXXXXX, index ID 0. Chain linkage mismatch. (1:125126)->next = (1:125127), but (1:125127)->prev = (0:125126)."
donde X son números.
Causas
Esto es debido a que la operación de SHRINK no puede quitar una página de la tabla del SYSFILES1 en el fichero de datos primario de la base de datos.
Según Microsoft esto se debe a un bug encontrado en las todas las versiones de SQL Server, el cual fue parchado con el Service Pack 4
Solución
La solución que entrega Microsoft es obtener la ultima versión de SQL Server, para esto debemos saber cual es nuestra versión y el idioma de SQL Server (ver Variables del Sistema SQL Server).
Luego debemos obtener el último Service Pack de SQL 2000 Server. Una vez que sepamos cual es debemos bajar la versión en el mismo idioma que tengamos instalado.
Nota MSDE
Si se tiene la versión gratuita de SQL Server (MSDE), la actualización no es tan sencilla, se recomienda leer la ayuda Service Pack 4 for Microsoft SQL Server 2000 Desktop Engine (MSDE 2000).