lunes, 8 de agosto de 2016

SQL Server: eliminar clave foránea si existe

IF EXISTS (SELECT * 
  FROM sys.foreign_keys 
   WHERE object_id = OBJECT_ID(N'dbo.FK_Vigilancias_Normas_Adicionales_Normas')
   AND parent_object_id = OBJECT_ID(N'dbo.Vigilancias_Normas_Adicionales')
)
  ALTER TABLE Vigilancias_Normas_Adicionales DROP CONSTRAINT FK_Vigilancias_Normas_Adicionales_Normas

IF EXISTS (
SELECT * 
FROM sys.columns 
WHERE  object_id = OBJECT_ID(N'[dbo].[Vigilancias_Normas_Adicionales]') 
AND name = 'ID Norma'
)
BEGIN
ALTER TABLE [dbo].[Vigilancias_Normas_Adicionales] DROP COLUMN [ID Norma]
END