0
我想用当前的qty +来自另一个表的qty更新prod_qty;您不能在FROM子句中指定目标表'tbl_prod'进行更新
它与SET SQL_SAFE_UPDATES = 0工作台运行;但是当我尝试在VB.net运行它时出现错误说
你不能在指定目标表 'tbl_prod' FOR UPDATE FROM子句
这里的查询
Update tbl_prod
set prod_qty = prod_qty+
(Select itp_needQty
from tbl_itmonpur
where itp_prodID = prod_id
and itp_status = 'PENDING'
and itp_InvoiceNo = 1004)
where prod_id =
(Select itp_prodID
from tbl_itmonpur
where itp_prodID = prod_id
and itp_status = 'PENDING'
and itp_InvoiceNo = 1004);
我只是一个学生,所以请容易对我:)谢谢!
con.Open()
qry = "UPDATE tbl_prod " + _
"Join tbl_itmonpur " + _
"ON tbl_itmonpur.itp_prodID = tbl_prod.prod_id " + _
"SET tbl_prod.prod_qty = tbl_prod.prod_qty + tbl_itmonpur.itp_needQty " + _
"WHERE tbl_itmonpur.itp_status = 'PENDING' AND tbl_itmonpur.itp_InvoiceNo @InvoiceNo; "
cmd = New MySqlCommand(qry, con)
With cmd
.Parameters.AddWithValue("@InvoiceNo", txtInvoicePend.Text)
End With
cmd.ExecuteNonQuery()
con.Close()
我已经试过您的解决方案和再次它适用于工作台但不是在vb.net 它说,你不能在FROM子句 – 2014-10-06 02:31:28
我做先生指定目标表“tbl_prod”的更新:)也许有什么毛病我在vb.net解决方案? – 2014-10-06 02:35:40
请编辑您的问题并添加vb.net代码。 – ekad 2014-10-06 02:36:18