Burada iki gerçek seçeneğiniz var, tablodaki kısıtlamaları devre dışı bırakabilirsiniz. Bu genellikle harika bir fikir değildir, çünkü diğer tablolarla ilgili verilerle uğraşıyorsanız, ancak şemanızın tam boyutunu bilmediğiniz ve amaçlarınıza uygun olabileceği için kötü bir veri durumu ile sonuçlanabilirsiniz.
ALTER TABLE [workdemo.no].[dbo].[M06Persons] NOCHECK CONSTRAINT [FK_M02ArticlePersons_M06Persons]
Silme işleminden sonra kısıtlamayı tekrar açmayı unutmayın.
ALTER TABLE [workdemo.no].[dbo].[M06Persons] WITH CHECK CHECK CONSTRAINT [FK_M02ArticlePersons_M06Persons]
İkinci seçenek, kısıtlamayı ON DELETE CASCADE seçeneğiyle bırakmak ve yeniden eklemek olacaktır:
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
FK adınıza göre üst tablonuz M02ArticlePersons ve üst sütun M06Persons gibi görünüyor.
Bu şemayı yazmadıysanız, lütfen kısıtlamaların neden mevcut olabileceğini düşünmeye çalışın ve bu şekilde ihlal etmenin istenmeyen yan etkileri olabileceğini anlayın.