回 帖 发 新 帖 刷新版面

主题:[讨论]关于ASP中SQL的UPDATE问题请教

又要麻烦大家了,我有个ASP文件,是向SQL存数据的,添加新的数据没有问题,就是再UPDATE时候总是有错误,看了半天也没看出什么错误,现把代码全部粘帖出来,想请大家帮忙看看!!

<!--#include File="../ConnDB.asp"-->
<!--#include file="isAdmin.asp"-->
<html>
<head>
<title>编辑客户信息</title>
</head>
<body>
<%
  Function changechr(str) 
    changechr = Replace(str," "," ")
    changechr = Replace(changechr,Chr(13),"<br>")
  End Function
  Dim GName
  Dim StrAction
  '得到动作参数,如果为add则表示添加新商品,如果为update则表示更改商品
  StrAction = Request.QueryString("action")
  '取得商品题目和内容和提交人用户名
  CName = Trim(Request("co_name"))
  CName = Replace(CName ,"'","‘") 
  GName = Trim(Request("name"))
  GName = Replace(GName ,"'","‘")
  rqtContent = changechr(Request("Content"))   '替换函数
  rqtContent = Replace(rqtContent,"'","‘")  '替换内容中的单引号
  Set rs = Server.CreateObject("ADODB.RECORDSET")
  If StrAction="add" Then
    '在数据库表Goods中插入新商品信息
    sql="Select * from LedCompany"
    rs.Open sql,Conn,1,3
rs.AddNew
rs("FirstTypeId") = CInt(Request.Form("firsttypeid")) 
rs("SecondTypeId") = CInt(Request.Form("secondtypeid"))
rs("ThirdTypeId") = CInt(Request.Form("thirdtypeid"))
rs("Co_Name")= CName
rs("Sn_Number")= Request("number")
rs("Co_Info") = CInt(Request.Form("Co_Info"))
rs("Posttime")=now()
rs("Web_Address") = Request("webadress")
rs("Address") = Request("adress")
rs("ImageFile") = request("upimage")
rs("Name")= GName
rs("Mobile")= Request("mobile")
rs("Email")=Request("email")
rs("Telephone")=Request("telephone")
rs("Fax")=Request("fax")
rs("Content")=rqtContent 
rs.Update
  Else
    '更改此商品信息
    id = Request.QueryString("id")
    sql = "Update LedCompany Set FirstTypeId="&CInt(Request.Form("FirstTypeId"))&",SecSecondTypeId"))&",ThirdTypeId="&CInt(Request.Form("ThirdTypeId"))&",Co_Name='"&CName&"',Sn_Number='"&Request("number")&"',Co_Info="&CInt(Request.Form("Co_Info"))&",Posttime='"&now()&"'" &_
     ",Web_Adress="&Request("webadress")&",Adress="&Request("adress")&",Name='"&GName&"',Mobile='"&Request("mobile")&"',Email='"&Request("email")&"',Telephone='"&Request("telephone")&"',Fax='"&Request("fax")&"'" &_
     ",Content='"&rqtContent&"' Where id="&CInt(id)
   
    Conn.Execute(sql)
  End If
  Set rs = Nothing
  response.write "<h3>客户成功保存</h3>"
%>
</body>
<script language="javascript">
  // 刷新父级窗口,延迟此关闭
  opener.location.reload();
  setTimeout("window.close()",600);
</script>
</html> 
UID219701 精华0 阅读权限10 在线时间1 小时 最后登录2007-11-26 查看详细资料
 编辑 引用 使用道具 报告 评分 回复 TOP 
 

回复列表 (共8个回复)

沙发


提示什么错误啊?

板凳

UPDATE第一行“,”附近有错误,好像还是UPDATE语句有问题,能帮我看看吗?

3 楼

Conn.Execute(sql)
在这句上面加上
response.write sql
response.end
看看输出来的sql语句是否正确。

4 楼

CInt(Request.Form("FirstTypeId"))&",SecSecondTypeId"))&"
这里多了两个右括号

5 楼

[quote]CInt(Request.Form("FirstTypeId"))&",SecSecondTypeId"))&"
这里多了两个右括号[/quote]
不好意思,前面我代码没有复制完全,现在我把update这条语句单独复制出来,你能帮我看看吗?

 id = Request.QueryString("id")
    sql = "Update LedCompany Set FirstTypeId="&CInt(Request.Form("FirstTypeId"))&",SecondTypeId="&CInt(Request.SecondForm("TypeId"))&",ThirdTypeId="&CInt(Request.Form("ThirdTypeId"))&",Co_Name='"&CName&"',Sn_Number='"&Request("number")&"',Co_Info="&CInt(Request.Form("Co_Info"))&",Posttime='"&now()&"'" &_
        ",Web_Adress="&Request("webadress")&",Adress="&Request("adress")&",Name='"&GName&"',Mobile='"&Request("mobile")&"',Email='"&Request("email")&"',Telephone='"&Request("telephone")&"',Fax='"&Request("fax")&"'" &_
           ",Content='"&rqtContent&"' Where id="&CInt(id)
   
    Conn.Execute(sql)

6 楼

使用3楼的方法试试

7 楼

我现在又改了改
但是还有错误,错误信息为:
Microsoft VBScript 编译器错误 错误 '800a03f6' 

缺少 'End' 

/iisHelp/common/500-100.asp,行242 

Microsoft VBScript 编译器错误 错误 '800a0409' 

未结束的字符串常量 

/caiguang/admin/GoodsSave.asp,行55 

",Content='"&rqtContent&"' Where id="&CInt(id)&"
------------------------------------------------^


代码如下:
id = Request.QueryString("id")
    sql = "Update LedCompany Set FirstTypeId="&CInt(Request.Form("FirstTypeId"))&",SecondTypeId="&CInt(Request.Form("SecondTypeId"))&",ThirdTypeId="&CInt(Request.Form("ThirdTypeId"))&",Co_Name='"&CName&"',Sn_Number='"&Request("number")&"',Co_Info="&CInt(Request.Form("Co_Info"))&",Posttime='"&now()&"'" &_
        ",Web_Adress="&Request("webadress")&",Adress="&Request("adress")&",Name='"&GName&"',Mobile='"&Request("mobile")&"',Email='"&Request("email")&"',Telephone='"&Request("telephone")&"',Fax='"&Request("fax")&"'" &_
           ",Content='"&rqtContent&"' Where id="&CInt(id)&"
    Conn.Execute(sql)
  End If
  Set rs = Nothing
  response.write "<h3>客户成功保存</h3>"

8 楼

当然错了,去掉最后面的where id="&cint(id)&"
后面的&"或者在&"后面再加上"

我来回复

您尚未登录,请登录后再回复。点此登录或注册