如何将查询结果存储在变量中并使用经典ASP显示它

时间:2012-05-10 09:32:44

标签: sql asp-classic vbscript sql-server-2000

我正在使用SQL Server 2000和经典ASP来使用表格显示结果,即HTML格式。 我正在尝试获取SQL表中存在的列记录的值的总和。 为此,我尝试了这个。

Balance Leave =<%
                        sql= "select SUM('no_of_leave_taken') from emp_leave_details where emp_no='"&request.QueryString("id")&"'"  
                        rs.open sql,con,1,2
                        response.Write(con.execute sql)
                        rs.close
                        %>

浏览器中显示的错误是

  

总和或平均聚合操作不能采用varchar数据类型   作为一个论点。

2 个答案:

答案 0 :(得分:2)

这看起来像是一个SQL错误 - 如果在SQL Server企业管理器中运行该查询会发生什么? emp_details.no_of_leave_taken是数字字段吗?

我将添加另一件事 - 请不要使用无法解决的查询价值 - 请阅读this ASP-friendly explanation of SQL Injection attacks以获取有关原因的一些解释。

答案 1 :(得分:1)

我尝试了这一点,自己想出来<% sql= "select SUM(no_of_leave_taken) as total from emp_leave_details where emp_name='"&request.QueryString("name")&"'" rs.open sql,con,1,2 response.Write(31- rs("total")) %>这对我来说是一个新的知识...我很困惑,因为上面的查询中的“total”表达式对我起作用并且作为一个新列调用使用rs("total")感谢@glenatron提供帮助

,几乎在记录集中的字段