注册 登录
编程论坛 ASP技术论坛

新手求助!关于ASP链接Access的问题

joyceccc 发布于 2012-03-22 16:05, 471 次点击
ASP页中做了一个表单输入的信息,删除其连接的Access数据库相应字段所在的行。
源代码如下:
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%>
<%
    /***********删除数据表中的字段*****************/
   
        /*连接数据库*/
        var conn = Server.CreateObject("ADODB.Connection")
        var connstr ="DRIVER={Microsoft Access Driver (*.mdb)};DBQ="+Server.MapPath("Student.mdb")
//数据源连接字符串
        conn.Open(connstr);
        //rs = Server.CreateObject("ADODB.Recordset");
        //rs.Open "select *from stu where Number="&Request.Form("tnumber"),conn,1,3
        var numbers = Request.Form("tnumber");
        //Response.Write(numbers);
        var sql = "delete *from stu where Number=numbers";
       conn.Execute(sql);
        conn.Close;
        Response.Redirect("add_ok.asp")
   
   
%>
表单输入tnumber,删除数据库对应信息,现在删除不了,显示
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e10'

[Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是 1。

/IAE/stu_add.asp,行 22
红色的为错误行,请问该如何修改
3 回复
#2
jonathen2012-03-22 17:31
出现这种问题 一般都是查询语句出错了!实际上错误并不是这一行 只是运行到这一行的时候报错!
这个应该是你的数据库里面字段用到了保留字 像name number这些等等 在执行查询语句的时候 都应该加个[]
var sql = "delete *from stu where [Number]=numbers";试试看!
#3
joyceccc2012-03-22 19:09
回复 2楼 jonathen
我按照你的方法加了[],还是出现原来的错误。而且我也改了数据库的字段,不再使用name等了,又试了一次还是同样的错误。不过很感谢你。
#4
joyceccc2012-03-22 19:41
回复 2楼 jonathen
问题解决了,是sql语句的问题:var sql = "delete *from stu where number= " + numbers;就对了。谢谢你的回答
1