C# 具有外键的两个表之间的数据库删除查询
我有一个配置文件,如下图表所示,每当我试图从中删除一行时,我都会遇到这个错误,这表明Tempprice表中的外键中仍然有数据,它与Lots表中的Id相关 问题是,当它的Lots表变为Delete时,Tempprice中仍有行具有不同的Userid,但具有相同的lotsid,并且具有我要删除的Ownerid或Winnerid 我不知道如何删除这些行!?或者需要哪个查询 数据库关系和表: 代码:C# 具有外键的两个表之间的数据库删除查询,c#,asp.net,sql-server,C#,Asp.net,Sql Server,我有一个配置文件,如下图表所示,每当我试图从中删除一行时,我都会遇到这个错误,这表明Tempprice表中的外键中仍然有数据,它与Lots表中的Id相关 问题是,当它的Lots表变为Delete时,Tempprice中仍有行具有不同的Userid,但具有相同的lotsid,并且具有我要删除的Ownerid或Winnerid 我不知道如何删除这些行!?或者需要哪个查询 数据库关系和表: 代码: 若要删除参照,需要通过选择连接两个对象的线来设置关系,以便在“删除时终止1”属性中进行级联。 然后需要
若要删除参照,需要通过选择连接两个对象的线来设置关系,以便在“删除时终止1”属性中进行级联。
然后需要加载引用的对象或集合。在这种情况下调用Delete,将删除您的对象及其引用的所有对象。您能否将表结构作为正确的SQL代码提供给我们-此图片太小,无法读取任何内容。……新选项卡中的查看图像显示可读大小。我几乎不会称为5磅字体readable@marc_s如何生成图表的Sql代码?@marc_s和@McKay所需表格的大图:然后您必须手动删除所有其他相关引用。如何删除?我的意思是使用哪个查询?回答:首先-从Tempprice中删除,其中Lotid插入从Lot中选择Id,其中Ownerid=配置文件Id,然后-从Lot中删除,其中Ownerid=配置文件Id
while (checkbox.Checked)
{
// Retreive the ID
int ida = Convert.ToInt32(GridView1.DataKeys[row.RowIndex].Value);
// Pass the value of the selected Id(s) to the Delete //command.
//These numbers indicate in which order tables shoulde be deleted
/*1*/
new BLL.LoginBLL().Delete(ida);
/*2*/
new BLL.MessageBLL().Delete(ida);
/*3*/
new BLL.JointBLL().Delete(ida);
/*4*/
new BLL.TemppriceBLL().Delete(ida);
/*5*/
new BLL.LotsBLL().Delete(ida);
/*6*/
new BLL.AuctionBLL().Delete(ida);
/*7*/
new BLL.ProfileBLL().DeleteProfile(ida);
checkbox.Checked = false;
}
ShowUsers();