长安轻卡:asp的问题 添加记录

来源:百度文库 编辑:神马品牌网 时间:2024/04/28 20:23:21
我要实现数据库的增加记录
下面这段代码提示
Microsoft OLE DB Provider for ODBC Drivers (0x80040E0C)
没有为命令对象设置命令。
是怎么回事 ?
<%
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("myimpig.mdb")
name=request.form("name")
email=request.form("email")
qq=request.form("qq")
if request("sort")=2 then
sql="insert into replytechnic(name,email,qq,content)values('"+name+"','"+email+"','"+qq+"')"
end if
if request("sort")=3 then
sql="insert into replyarticle(name,email,qq,content)values('"+name+"','"+email+"','"+qq+"')"
end if
conn.execute sql
conn.close
set conn=nothing
response.write "记录添加成功!"
%>
用了楼下的方法还是不行?
提示错误还是一样

我说你最好把+号,换成&

我曾遇到过过—————&有效,而+没效的时候

你这语句明显有错误么,你sql写了两条,执行的时候怎么知道执行哪一条呢?
应该这样写:

if request("sort")=2 then
sql="insert into replytechnic(name,email,qq,content)values('"+name+"','"+email+"','"+qq+"')"

Elseif request("sort")=3 then
sql="insert into replyarticle(name,email,qq,content)values('"+name+"','"+email+"','"+qq+"')"
end if

conn.execute sql

insert语句前后不匹配:
sql="insert into replytechnic(name,email,qq,content)values('"+name+"','"+email+"','"+qq+"')"
end if
if request("sort")=3 then
sql="insert into replyarticle(name,email,qq,content)values('"+name+"','"+email+"','"+qq+"')"

去掉这2句中的",content" 或者把2句中"')'"都改成"',' ')"

用insert语句容易出错,很多时候是缺少空格的问题,你可以试试在&两边都加上空格

可以不用insert语句而用rs的addnew方法
如下
set rs=server.createobject("adodb.recordset")
rs.open "replyarticle",conn,1,3
rs.addnew
rs("name")=request("name")
.....

.....

.....

rs.update