这段asp代码哪里错了?

是查看一个数据库内容的页面但是打不开,总显示http500错误请问这段代码哪里错了?希望高手指点!谢谢!<!--#IncludeFile="Data.asp"--><%D... 是查看一个数据库内容的页面
但是打不开,
总显示http500错误
请问这段代码哪里错了 ?
希望高手指点!
谢谢!

<!--#Include File="Data.asp"-->
<%
Dim LookType,ct,sm
LookType = Trim(Request("t"))
SQL = "SELECT * FROM MyOnly WHERE Email <> '' "

Select Case LookType
Case "2"
SQL = SQL & " ORDER By ID Desc"
Case "3"
SQL = SQL & " ORDER By SNum Asc"
Case "4"
SQL = SQL & " ORDER By SNum Desc"
Case Else
SQL = SQL & " ORDER By ID Asc"
End Select

ConnectionDatabase
Set Rs = Conn.Execute("Select Count(id),Sum(SNum) from MyOnly")
ct = Rs(0)
sm = Rs(1)
Rs.Close
Set Rs = Nothing
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>查看EMAIL</title>
<style type="text/css">
body,table,td {
font-size: 14px;
font-family: verdana,tahoma,arial,宋体;
}
</style>
</head>
<body>
<table border="0" cellspacing="1" cellpadding="0" bgcolor="lavender" align="center">
<tr bgcolor="ghostwhite" align="center">
<td colspan="4" height="27"><font color="#ff0000"><b>共<%=ct%>条记录</b></font>  <font color="#ff0000"><b>共发送<%=sm%>次</b></font>  <a href="?t=1">按ID正序</a>  <a href="?t=2">按ID倒序</a>  <a href="?t=3">次数正序</a>  <a href="?t=4">次数倒序</a>
</tr>
<tr bgcolor="#ffffff" align="center" height="27">
<td width="60"><b>ID</b></td>
<td width="150"><b>姓名</b></td>
<td width="260"><b>邮箱</b></td>
<td width="60"><b>发送</b></td>
</tr>
<%
Set Rs = Conn.Execute(SQL)
If Not Rs.Eof Then
Do While Not Rs.Eof
%>
<tr bgcolor="#ffffff">
<td height="27" align="center"><%=Rs("ID")%></td>
<td> <%=Rs("UserName")%></td>
<td> <%=Rs("Email")%></td>
<td align="center"><%=Rs("SNum")%></td>
</tr>

<%
Rs.MoveNext
Loop
End If
Rs.Close
Set Rs = Nothing
CloseDataBase
%>
</table>
</html>
说是第20行有问题:

--------------------------------------------------
Microsoft JET Database Engine 错误 '80040e10'

至少一个参数没有被指定值。

/others/MyOnly/maillist.asp,行 20
------------------------------------------------

也就是这一句:
Set Rs = Conn.Execute("Select Count(id),Sum(SNum) from MyOnly")

请问应该怎么改啊?
展开
 我来答
helloworld22
2009-03-28 · TA获得超过519个赞
知道小有建树答主
回答量:506
采纳率:0%
帮助的人:444万
展开全部

把IE高级选项里的"显示友好的http错误"前的勾取消掉就能查看详细错误,你这样光说500错误有什么用?

我拿你的代码在本地调试,可以运行,没有错误,我只是把ConnectionDatabase 和CloseDataBase去掉,其它没改动过.你看看是不是这两处有问题或者是你的数据库字段设计错误,检查一下id和SNum是否为数字型

我的运行截图传上来你看看

馨馨2015
2009-03-28 · TA获得超过151个赞
知道小有建树答主
回答量:196
采纳率:20%
帮助的人:64.9万
展开全部
1,写代码要规范,你是不是应该把ASP代码统一放到<body></body>里啊
2,还有,两个记录集要取不同的名字,检查错误也好检查。
3,你检查数据库id,snum有没有这俩字段,有没有MyOnly表
4,检查data.asp数据库连接路径
5,你"Select Count(id),Sum(SNum) from MyOnly"写错了吧,没有产生新的字段存放你查询到的记录。应该这么写"Select Count(id) As NewId,Sum(SNum) As NewSNum from MyOnly",NewId是总数,NewSNum是总和。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xueweijian19
2009-03-28 · TA获得超过116个赞
知道小有建树答主
回答量:207
采纳率:0%
帮助的人:280万
展开全部
看出一个问题来
ConnectionDatabase
Set Rs = Conn.Execute("Select Count(id),Sum(SNum) from MyOnly")
ct = Rs(0)
sm = Rs(1)
Rs.Close
Set Rs = Nothing
%>
在这段程序里 你已经把Rs释放了
但是在下面的程序里还在用
<%
Set Rs = Conn.Execute(SQL)
If Not Rs.Eof Then
Do While Not Rs.Eof
%>
所以不好使,
最好执行两个sql语句的时候,起名用不同名称
RS1,RS2,或者都执行完一起释放。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7893292
2009-03-28 · TA获得超过844个赞
知道小有建树答主
回答量:1088
采纳率:83%
帮助的人:693万
展开全部
看看这篇:

http://hi.baidu.com/xinyulou/blog/item/39b3578288564da60df4d209.html

检查一下我的数据库表MyOnly中是否有id 和 SNum 两个字段。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式