我在Xamarin Forms中使用的sqlite中有以下查询。allProdsId
初始化为:
allProdsId = new List<Products>();
首先,我进行了一个查询,该查询从表产品中检索所有产品ID。然后,我要删除所有已检索到所有
ProdId
订单的所有订单。删除查询不起作用。有人可以帮我使用Xamarin形式在sqlite中实现
allProdsId
子句吗?allProdsId = _con.Query<Products>("Select ProdId from Products");
con.Execute("DELETE FROM Orders WHERE ProdId = ?", allProdsId);
最佳答案
用逗号分隔所有要删除的ProdId的字符串,然后将其直接插入SQL字符串。
var productIDs = conn.Query<Products>("Select ProdId from Products");
var prodIDCommaString = string.Join(",", productIDs.Select(p => p.ProdId));
var deleteCount = conn.Execute("delete from Products where ProdId in (" + prodIDCommaString + ");");
关于c# - 在sqlite中删除where in子句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46795270/