2012-11-07 46 views
1

我有一个复位按钮是这样的:更新日期为空值SQL

<% If Request("Reset") = "Reset" Then 
Dim cn 
Dim strSQLCommand 
Set cn = Server.CreateObject("ADODB.Connection") 
cn.Open MM_DD_DB_STRING 
For Each variableName in Request.Form 
    If Instr(variableName, "selected") = "1" Then 
     Dim prodCode 
     prodCode = Split(variableName, "selected_")(1) 

     strSQLCommand = "UPDATE DB.STOCK SET DUE_DATE= NULL WHERE ID=x'" & prodCode & "'" 

     cn.Execute strSQLCommand 

    End If 
Next 
cn.Close 
Set cn = Nothing 
    End if 

    %> 

如果我点击重置我想DUE_DATE只待复位或相当= NULL 现在当我选择一个复选框并单击重置按钮它不会将DUE_DATE字段设置为空。但我用这个代码:UPDATE DB.STOCK SET DUE_DATE= NULL我做错了什么?

任何帮助表示赞赏。谢谢

+0

在.execute调用之前做一个response.write,看看这个值是否是你所期望的'strSQLCommand =“UPDATE DB.STOCK SET DUE_DATE = NULL WHERE ID = x'”&prodCode&“'”012.JPG Response.write “strSQLCommand =”&strSQLCommand&“
” 'cn.Execute strSQLCommand' – SearchAndResQ

+0

是的,它是先生, – user1805832

+1

复制并直接在数据库中尝试它 – SearchAndResQ

回答

0

由于SearchAndResQ在他对你的问题的评论中建议:在执行调用之前做一个快速的response.write,看看查询看起来是否正确。如果看起来不错,直接检查数据库,检查它是否接受它。

最后检查您的.asp网站是否出现错误。我怀疑这一点,因为你正在for循环中定义一个变量(dim prodCode),如果循环重复2次或更多次,这会导致页面出错。将此行移出for循环。