繁体   English   中英

经典ASP:在单个函数中执行2条更新语句

[英]Classic ASP: Execute 2 Update Statements in single function

我正在编写经典的ASP程序。在一个函数中,我必须在一个函数中对一个表使用2条更新语句。 第一个报表是更新发票的数量,第二个报表是基于更新的采购订单数量和采购申请数量的,我需要更新一个标志字段。 我可以用以下相同的函数编写:

   SET RS = app.Execute("SELECT PRInvoiceNo, Quantity FROM PurchaseOrderDetails WHERE CoID='" & param & "'")
   do while RS.EOF=false
       app.Execute("UPDATE PurchaseRequisitionDetails SET PO_Quantity = PO_Quantity + " & RS("Quantity") & " WHERE CoID='" & param & "' AND PRInvoiceNo = '" & RS("PRInvoiceNo") & "'")
        app.Execute("UPDATE PurchaseRequisitionDetails SET FullyPaidFlag=CASE WHEN PO_Quantity >= Quantity THEN 1 ELSE 0 END  WHERE CoID='" & param & "' AND PRInvoiceNo = '" & RS("PRInvoiceNo") & "'")
   RS.MoveNext
   loop

问题出在循环中,第一条语句正常工作。 第二个不起作用。 会是什么 我可以这样吗?

好吧,我得走了,但一定要检查以下内容:

  1. Response.Write(RS.RecordCount)-是否有记录? 或者,在循环内执行Response.Write(“ hello”)以确保。
  2. 检查RS(“ Quantity”),param等是否不为空。 如果是这样,则您的字符串连接将导致空字符串。

另外,请不要忘记转义变量!

Replace(param, "'", "''")

晚安!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM