analizador de integridad

01/03/2007 - 14:11 por Fernando Ugarte | Informe spam
Buenas
Estoy necesitando un analizador de integridad referencial de la bbdd y se me
ocurrio que se podria armar automaticamente consultando las vistas del
sistema o con sp_fkey, etc

Lo que necesito, por si alguien lo tiene o conoce como hacerlo es que para
cada fk de una tabla ver los registros que no tienen integridad
Pero como tengo casi 400 tablas no quiero consultar una por una :)

Por ejemplo
select * from facturas where facturas.clienteid not in (select clienteid
from clientes)
select * from facturas where facturas.productoid not in (select productoid
from productos)
etc, etc

Gracias
 

Leer las respuestas

#1 Alejandro Mesa
01/03/2007 - 15:47 | Informe spam
Fernando,

Es utilidad existe en SQL Server (al menos 2000 y 2005). Chequea el comando
"DBCC CHECKCONSTRAINTS" en tus libros en linea.

Puedes almarte un cursor que recorra la vista
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS, y ejecutar el comando dbcc por
cada restriccion de clave foranea.


AMB


"Fernando Ugarte" wrote:

Buenas
Estoy necesitando un analizador de integridad referencial de la bbdd y se me
ocurrio que se podria armar automaticamente consultando las vistas del
sistema o con sp_fkey, etc

Lo que necesito, por si alguien lo tiene o conoce como hacerlo es que para
cada fk de una tabla ver los registros que no tienen integridad
Pero como tengo casi 400 tablas no quiero consultar una por una :)

Por ejemplo
select * from facturas where facturas.clienteid not in (select clienteid
from clientes)
select * from facturas where facturas.productoid not in (select productoid
from productos)
etc, etc

Gracias



Preguntas similares