<% a=trim(request("year")) b=trim(request("month")) c=trim(request("date")) d=trim(request("CAT")) e=trim(request("province")) f=trim(request("BD")) g=trim(request("O/I")) h=trim(request("output"))
Function sql(x,y,sqls) if y<>"" then sqls=sqls & " and " & x & " like '%" & y & "%'" end if sql=sqls End Function
Set conn=Server.CreateObject("ADODB.Connection") DBpath=Server.MapPath("biao.mdb") Conn.Open "driver={Microsoft Access Driver (*.mdb)};pwd=;dbq=" & DBpath Set rs=Server.CreateObject("ADODB.Recordset")
sqls="select sum(actual) from ASB where 1=1" sqls=sql("year",a,sqls) sqls=sql("month",b,sqls) sqls=sql("date",c,sqls) sqls=sql("CAT",d,sqls) sqls=sql("BD",e,sqls) sqls=sql("province",f,sqls) sqls=sql("O/I",g,sqls) rs.open sqls,conn,2,2 session("actual")=rs(0)
do while not rs.eof for each x in rs.fields v1=x.value next rs.movenext loop response.write v1 %> 这是一个根据用户输入信息进行查询的查询程序,year,month,date,CAT,province,BD,O/I,output都是查询条件,actual是数据库中的ASB表中的一个字段,我的目的是要对符合条件的记录的actual字段求和并输出到我已经设计好的表格中。 我现在遇到的问题是当我输入year,month,date,CAT几个条件进行查询时,返回的v1值是正确的,但是输入BD和province的查询条件时返回了一个空白页面,我不明白是怎么回事。 另外输入O/I条件后页面就说出错了,错误号80040E10,line 30,错误信息是too few parameters expected 2,这是什么原因?