Desactivar llaves foráneas en SQL Server
Este es un aporte de Gerardo Hess. Resulta que en algunos casos es necesario temporalmente desactivar la integridad referencial, realizar un conjunto de operaciones y finalmente re-activarla de nuevo.
Lo cierto del caso es que si no se hace correctamente las referencias foráneas puede ser que no se activen. En la tabla adjunta, se muestran los TSQL utilizados para estos efectos:
alter table dbo.AMBITO NOCHECK constraint ALL --Desactivar alter table dbo.AMBITO CHECK constraint ALL --Activar |
Luego de un análisis exhaustivo, nos dimos cuenta que el comportamiento de activar las referencias no era el adecuado, pues es necesario indicarle al servidor que previo a la activación verifique que los datos respetan la integridad deseada. Por lo tanto, la forma correcta de activar las referencias foráneas es
alter table dbo.AMBITO with check check constraint all –Activar |
Saludos,
Eduardo Castro – Microsoft SQL Server
Costa Rica
Technorati Tags: SQL Server
LiveJournal Tags: SQL Server
del.icio.us Tags: SQL Server
Comments