Sql İlişkili Tablolardan Kayıt Silerken yada Değiştirirken Oluşan Hata

Karşılaştığım bir hata ve çözümü not alıyorum.

System.Data.SqlClient.SqlException: The DELETE statement conflicted with the REFERENCE constraint "". The conflict occurred in database "", table "", column ''. The statement has been terminated.

Bu hatanın sebebi ilişkilendirilmiş bir tabloda bir satır silindiğinde veya degiştirilmek istendiğinde uyarılan hatadır.

Sebebi ise şudur iki tablo ilişki halinde ise birinden kolon silindiğinde diğerindede aynı satır var olduğundan dolayı silimi engelleniyor. Yani alt ilişkideki veriyi silmiyor. 

Çözümü ise basit.

Database diagrams > Diagrama sağ tık> modify   ile açıyoruz.
ilişkideki bağlantıyı tıklıyoruz.
Propertiesden > Database Desinger kısmından > insert and update specification kısmında
Delete Rule (Yani silindiğinde) kısmına Cascade yapıyoruz.
Update Rule (Yani değiştirildiğinde) kısmına Cascade yapıyoruz.


Bu makaleyi kendime not olarak yazdım ama yardım isteyen olursa yazabilir. 

Yorumlar

Bu blogdaki popüler yayınlar

Asp.Net ve Sql ile Bağlantılarda Alınan Hatalar

MVC route .html uzantılı sayfaya yönlendirme

Asp.Net Döviz Kuru Çekme