读书人

BOF 或 EOF 中有一个是“真”或者当

发布时间: 2012-03-20 14:01:11 作者: rapoo

BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。
不是BUG。。装了补丁也没用。
应该是代码有问题
代码如下,各位给看看。

<%@LANGUAGE= "VBSCRIPT " CODEPAGE= "936 "%>
<%if not session( "isbmd ")= "yes " then
response.Redirect "Login.htm "

else
%>
<% dim sdate,scarno
sdate=Request.QueryString( "date ")
scarno=Request.QueryString( "techCarno ")

%>
<!--#include file= "conn.asp "-->

<%
if request( "action ")= "update " then
id=request( "id ")
'if not rs.eof then
set rs=server.createobject( "adodb.recordset ")
sqltext= "select * from [date] where [date]= ' "& sdate & " ' and techCarno= ' "& scarno & " ' "
rs.open sqltext,conn,3,3
rs( "time1 ")=request.form( "time1 ")
rs( "time2 ")=request.Form( "time2 ")
rs( "time3 ")=request.Form( "time3 ")
rs( "time4 ")=request.Form( "time4 ")
rs( "time5 ")=request.Form( "time5 ")
rs( "time6 ")=request.Form( "time6 ")
rs( "time7 ")=request.Form( "time7 ")
rs( "time8 ")=request.Form( "time8 ")
rs( "time9 ")=request.Form( "time9 ")
rs( "time10 ")=request.Form( "time10 ")
'end if
rs.update
rs.close
conn.close
response.redirect "timeedit.asp "
else
id=request( "id ")
set rs=server.createobject( "adodb.recordset ")
sqltext= "select * from [date] where ID= "&id
rs.open sqltext,conn,1,1


end if
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN " "http://www.w3.org/TR/html4/loose.dtd ">
<html>
<head>
<meta http-equiv= "Content-Type " content= "text/html; charset=gb2312 ">
<title> 报名点约车修改 </title>
</head>
<SCRIPT language=javascript id=clientEventHandlersJS>
<!--

function form1_onsubmit()
{
if(document.form1.name1.value.length <1)
{
alert( " 约车人项目不能为空,若未约填写“未约”! ");
document.form1.name1.focus();
return false;
}
}

//-->
</SCRIPT>

<body>
<form name= "form1 " method= "post " action= "edit.asp " onSubmit= "return form1_onsubmit(); ">
<input type=hidden name=action value= "update ">
<table width= "389 " border= "1 " align= "center ">
<tr align= "center ">
<td colspan= "2 "> 约车信息修改 </td>
</tr>
<tr>
<td> 车号: </td>
<td> <%=rs( "techCarno ")%> </td>


</tr>
<tr>
<td> 日期: </td>
<td> <%=rs( "date ")%> </td>
</tr>
<tr>
<td colspan= "2 ">   </td>
</tr>
<tr>
<td width= "141 "> 时间段 </td>
<td width= "232 "> 状态 </td>
</tr>
<tr>
<td> 8:30-9:30 </td>
<td> <input type= "text " name= "time1 " size= "16 " maxlength= "10 " value= " <%=rs( "time1 ")%> "> </td>
</tr>
<tr>
<td> 9:30-10:30 </td>
<td> <input type= "text " name= "time2 " size= "16 " maxlength= "10 " value= " <%=rs( "time2 ")%> "> </td>
</tr>
<tr>
<td> 10:30-11:30 </td>
<td> <input type= "text " name= "time3 " size= "16 " maxlength= "10 " value= " <%=rs( "time3 ")%> "> </td>
</tr>
<tr>
<td> 13:30-14:30 </td>
<td> <input type= "text " name= "time4 " size= "16 " maxlength= "10 " value= " <%=rs( "time4 ")%> "> </td>
</tr>
<tr>
<td> 14:30-15:30 </td>
<td> <input type= "text " name= "time5 " size= "16 " maxlength= "10 " value= " <%=rs( "time5 ")%> "> </td>
</tr>
<tr>
<td> 15:30-16:30 </td>
<td> <input type= "text " name= "time6 " size= "16 " maxlength= "10 " value= " <%=rs( "time6 ")%> "> </td>
</tr>
<tr>
<td> 16:30-17:30 </td>
<td> <input type= "text " name= "time7 " size= "16 " maxlength= "10 " value= " <%=rs( "time7 ")%> "> </td>
</tr>
<tr>
<td> 18:30-19:30 </td>
<td> <input type= "text " name= "time8 " size= "16 " maxlength= "10 " value= " <%=rs( "time8 ")%> "> </td>
</tr>
<tr>


<td> 19:30-20:30 </td>
<td> <input type= "text " name= "time9 " size= "16 " maxlength= "10 " value= " <%=rs( "time9 ")%> "> </td>
</tr>
<tr>
<td> 20:30-21:30 </td>
<td> <input type= "text " name= "time10 " size= "16 " maxlength= "10 " value= " <%=rs( "time10 ")%> "> </td>
</tr>
<tr align= "center ">
<td colspan= "2 "> <input type= "submit " name= "Submit " value= "提交 ">
  <input type= "reset " name= "Submit2 " value= "重置 "> </td>
</tr>
</table>
</form>
</body>
</html>
<%
rs.close
conn.close
end if%>

[解决办法]
rs.open sqltext,conn,3,3
response.write "条数: "&rs.recordcount& "SQL: "&sqltext
response.end

对比SQL和数据表自己分析下咋回事。
[解决办法]
rs.close
conn.close 暂时不关闭
PS:那where条件换个试试
[解决办法]
出现这个问题,是因为你在查询的时候没有判断结果集里有没有记录,就取值了.你那个查出来肯定是没有记录.加上
rs.open......
if not rs.eof then
取值
end if
程序处理

读书人网 >ASP

热点推荐