1

我想从连接两个其他表的表中删除记录,似乎外键关系可能会阻止此操作发生。如何删除具有外键的连接表中的记录Asp.Net

请记住,外键约束不会在数据库中强制执行,并且没有足够奇怪的引发错误。它根本不会删除记录。另外,我可以轻松地从不是连接表的表中删除其他记录。

我正在使用的当前框架是Asp.Net MVC2,但由于我也尝试使用SqlCommand对象删除它,它不起作用,我不归功于框架。有一点需要注意的是,如果我通过存储过程来完成工作,或者如果我在SQL Management Studio中执行查询,那么它的确行得通。此外,该应用程序当前与数据库不在同一台服务器上。

这里的任何想法?

在此先感谢。

+0

假设没有抛出异常,我想知道db.SaveChanges()的调用发生在哪里?它在调用函数吗? (就此而言,db是从哪里来的,并且它在using()块中?)。较大的代码示例可能有助于缩小范围。 – user700390 2012-08-17 02:48:46

回答

0

如果你有两个表

DataTable1 
ID[PK] 
Name 

DataTable2 
ID[FK] 
LastName 

假设你有这两个表。如果您是从记录delete一个Datatable1因为你使用ID外键表Datatable2

您必须首先从外键表即Datatable2删除记录,它会给错误。

相关问题