La Web del Programador: Comunidad de Programadores
 
    Pregunta:  63213 - PROBLEMA DE COHERENCIA EN LA BASE DE DATOS
Autor:  Linney Perez Cornelio
Buenas tardes, al entrar a un módulo del sistema manda el siguiente mensaje: Se ha detectado un posible problema de coherencia de la base de datos en la base de datos ' X' Deben ejecutarse DBCC CHECKDB y DBCC CHECKCATALOG en la base de datos ' , ya investigue y encontre el comando
DBCC CHECKDB ( 'TCADBASA' ), me arroja el mensaje de error, pero que mas tengo que ejecutar para corregirlo. Gracias por su ayuda.

  Respuesta:  Linney Pérez Cornelio
Hola, para corregir este problema corri el comando DBCC CHECKDB, al correrlo al fina me manda el mensaje de que la base de datos tenia inconsistencias y me marcaba que tablas, investigando encontre que el comando DBCC CHECKDB sirve para revisar lo siguiente:
En cada tabla de la base de datos, DBCC CHECKDB comprueba que:

•Los índices y las páginas de datos están correctamente vinculados.
•Los índices se encuentran en el orden correcto.
•Los punteros son coherentes.
•Los datos de cada página son razonables.
•Los desplazamientos de página son razonables.

Entonces me fui primero a buscar un query que arreglara los índices, corri el siguiente query que arreglo mi problema, se corre tal cuál no hay que moverle nada:
--Comando para ver que tablas necesitan reindexar e investigar por que esta mostrando eso

DBCC CHECKDB

--query para Reindexar los indices.

USE DatabaseName Enter the name of the database you want to reindex

DECLARE @TableName
varchar(255)
DECLARE TableCursor
CURSOR FOR SELECT table_name FROM information_schema.tables
WHERE table_type = `base
table` OPEN TableCursor
FETCH NEXT FROM TableCursor
INTO @TableName
WHILE @@FETCH_STATUS = 0
BEGIN DBCC DBREINDEX(@TableName,` `,90)
FETCH NEXT FROM TableCursor
INTO @TableName END CLOSE TableCursor
DEALLOCATE TableCursor

En link donde encontre este query y soluciono mi problema es:http://www.sql-server-performance.com/tips/rebuilding_indexes_p1.aspx

Espero que si a alguien mas le pasa, esto le pueda ayudar. Saludos.

  Respuesta:  Linney Perez Cornelio
Tenemos windows server 2003 y Sql 2000.