如何在多选择中编写删除查询

本文关键字:删除 查询 选择 | 更新日期: 2023-09-27 18:06:29

我在我的web项目中有一个gridview,我将它与SqlDataSource连接。select命令包含3表中的字段,我为gridview创建了commandField,以便用户可以删除他们的Purchase Items。这是我的c#选择代码:

SqlDataSource1.SelectCommand = 
    "SELECT Production.Name, Production.Price ,PurchaseItem.Quantity,
        Production.Info ,Purchase.OrderDate     
    FROM Production 
    INNER JOIN PurchaseItem on (Production.ID = PurchaseItem.ProductID) 
    INNER JOIN Purchase on(Purchase.ID = PurchaseItem.PurchaseID) 
    WHERE Purchase.UserID = '" + Convert.ToInt64(da.getuserid(Session["Mysys"].ToString()).FirstOrDefault()) + "'";
GridView1.DataSourceID = SqlDataSource1.ID;
GridView1.DataBind();

我的问题是SqlDataSource的DeleteCommand。有可能这样做吗?

如何在多选择中编写删除查询

Production, PurchaseItem, Purchase是您想要通过在gridview上选择删除项目的表,对吗?如果是这样。

你只需要做一个像

这样的删除查询
DELETE FROM PRODUCTION WHERE ID = VALUE
DELETE FROM PURCHASEITEM WHERE ID = VALUE
DELETE FROM PURCHASE WHERE ID = VALUE

,如果你想删除只运行一个查询,你可以尝试INNER JOIN:

DELETE table1, table2  FROM table1  INNER JOIN table2  
WHERE table1.id=table2.id and table1.id = 'VALUE'