Aquí tiene dos opciones reales, puede deshabilitar las restricciones en la tabla. Esto generalmente no es una gran idea, ya que puede terminar con una mala condición de datos si está jugando con datos relacionados con otras tablas, pero no conoce el alcance completo de su esquema y puede adaptarse a sus propósitos:
ALTER TABLE [workdemo.no].[dbo].[M06Persons] NOCHECK CONSTRAINT [FK_M02ArticlePersons_M06Persons]
Recuerde volver a activar la restricción después de la eliminación con
ALTER TABLE [workdemo.no].[dbo].[M06Persons] WITH CHECK CHECK CONSTRAINT [FK_M02ArticlePersons_M06Persons]
La segunda opción sería eliminar y volver a agregar la restricción con la opción ON DELETE CASCADE mediante:
ALTER TABLE [workdemo.no].[dbo].[M06Persons] DROP CONSTRAINT [FK_M02ArticlePersons_M06Persons]
ALTER TABLE [workdemo.no].[dbo].[M06Persons] WITH NOCHECK ADD CONSTRAINT [FK_M02ArticlePersons_M06Persons] FOREIGN KEY(M06PersonId)
REFERENCES <parent table here> (<parent column here>)
ON DELETE CASCADE
Según su nombre FK, parece que su tabla principal es M02ArticlePersons y la columna principal es M06Persons.
Si no creó este esquema, trate de considerar por qué las restricciones pueden estar presentes y comprenda que violarlas de esta manera puede tener efectos secundarios no deseados.
También hay otra opción manual:
Puede ir a la tabla secundaria y eliminar las filas secundarias a las que hace referencia la clave primaria. Luego puede eliminar la fila principal. Esto es esencialmente lo que hace la eliminación en cascada. De esta manera, no tiene que soltar / recrear / alterar sus restricciones.
fuente
Este pequeño código ayudará a cualquier tabla de la que desee eliminar registros. También se ocupa de la integridad referencial ...
El siguiente código generará sentencias DELETE. Solo especifique el nombre_estable_esquema.
fuente