sql >> Base de Datos >  >> RDS >> Sqlserver

Si la clave externa no existe, ¿agregar una restricción de clave externa (o eliminar una restricción de clave externa si existe) sin usar el nombre?

Prueba esto:

IF NOT EXISTS (SELECT * FROM sys.objects o WHERE o.object_id = object_id(N'[dbo].[FK_Products_Brands]') AND OBJECTPROPERTY(o.object_id, N'IsForeignKey') = 1)
BEGIN
    ALTER TABLE [dbo].[Products] WITH CHECK ADD CONSTRAINT [FK_Products_Brands] FOREIGN KEY([BrandID]) REFERENCES [dbo].[Brands] ([Id])
END