做作业 出错 请高手指教

hz2003 2004-05-05 08:17:51
Microsoft VBScript 编译器错误 错误 '800a03f6'

缺少 'End'

/iisHelp/common/500-100.asp,行242

ADODB.Recordset 错误 '800a0bcd'

BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。

/ks/test/backrandommain.asp,行33


backrandommain.asp 如下(部分):

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta NAME="GENERATOR" Content="Microsoft FrontPage 4.0">
<title>试卷</title>
</head>

<%@ Language=VBScript %>
<%
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("../试题库.mdb")

set rs=server.createobject("adodb.recordset")
set rs.activeconnection=conn
name=session("user")
tab1=session("tab")
stzs=0
%>

<body background="../images/bgcolor.gif">
<table border="0" width="100%">
<tr><th width="100%" align="center"><h1><font color="#FF0000" face="楷体_GB2312"><%=tab1%></font></h1></th></tr>
</table>
<form action="randomuserresult.asp" id="FORM1" method="POST" name="FORM1" target="_top">

<%
sql1="select * from "& name & tab1 &"暂时 where 试题题型='单项选择'"
set rs1=conn.execute(sql1)
response.write "<p id='单项选择题'></p>"
response.write "<FONT color=red face=''>"
response.write "<p id='单项选择题'>一. 单项选择题</FONT></p>"
rs1.movefirst
z=1

do while not rs1.EOF
tm=rs1("试题")
fs=rs1("试题分数")
response.write "<p>" & z & "." & tm & "(" & fs & "分)"
response.write "<br><font color=blue>请选择:</font><br>"

if rs1("附加参数")<=0 then
rs1("附加参数")=1
end if
for i = 1 to rs1("附加参数")
stzs=stzs+1
next
...全文
152 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hongweijin 2004-05-06
  • 打赏
  • 举报
回复
是数据库的数据引用出错,要注意数据库的数据是从0开始数的。
dsclub 2004-05-06
  • 打赏
  • 举报
回复
应该是rs1.movefirst的问题。

因为你数据库里现在是空的,没有记录,而你没有判断就movefirst了,所以报错了。

所以,应该先判断再move

response.write "<p id='单项选择题'>一. 单项选择题</FONT></p>"
if not(rs1.eof and rs1.bof) then
rs1.movefirst
z=1
.........

end if
空闲独处 2004-05-06
  • 打赏
  • 举报
回复
很明显你没必要加rs1.movefirst,因为如果你有数据的话,一打开就是在first了.
wolfsky1994 2004-05-06
  • 打赏
  • 举报
回复
去掉rs1.movefirst
whghwujx 2004-05-06
  • 打赏
  • 举报
回复
在调试的时候要注意数据库中的试验数据,这也是很重要的,很多错误单单看代码是无法发现的,原因就在数据
MonkeyDHua 2004-05-06
  • 打赏
  • 举报
回复
rs1.movefirst 的问题,movefirst 是移到第一条记录,但你的数据库是空的,所以出现eof或bof错误,如果有记录,一般打开数据库指什默认就停留在第一条上,在此没必要movefirst,如果确实需要,可加一判断语句 if not rs1.eof then rs1.movefirst
diveas 2004-05-05
  • 打赏
  • 举报
回复
看你上面的代码
diveas 2004-05-05
  • 打赏
  • 举报
回复
你再看看MoveFirst为啥出错!!!
FMBen 2004-05-05
  • 打赏
  • 举报
回复
BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。
是不是你调用了某条信息,然后没有该条信息?

另外,好像你的循环缺少了loop哦!!

还有,如果你的信息不需要更新数据的话,建议把楼上的 rs1.Open sql1,conn,1,3 改为 Rs1.Open sql1,conn,1,1
不需要用到3 !!
hwkknd 2004-05-05
  • 打赏
  • 举报
回复
constr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("../试题库.mdb")&";Persist Security Info=False"

试试这个链接呢,你这个错误是ADO常见错误,我在使用delphi的时候常看到,ADO升级之后会有所改善,ASP里没遇到过
你代码的33行是不是conn.Execute(...)这一行?如果是的话就从ADO本身下手,或是换成
Set rs1=CreateObject("ADODB.RecordSet")
Rs1.Open sql1,conn,1,3
来试试,看还会不会出错
内容概要:本文档系统性地介绍了2024年最新提出的两种智能优化算法——青蒿素优化算法与霜冰优化算法(RIME)的原理、实现方法及其性能对比分析,并提供了完整的Matlab代码实现。文档不仅聚焦于核心算法的仿真与验证,还整合了大量前沿科研资源,涵盖微电网优化、风电功率预测、无人机三维路径规划、电动汽车调度、图像融合、负荷预测、通信信号处理、电力系统故障恢复等多个高价值应用场景。所有案例均基于Matlab/Simulink平台进行建模与仿真,强调算法在复杂工程系统中的实际应用能力,旨在为科研人员提供一套从理论到代码再到应用的完整复现体系。; 适合人群:具备一定编程基础和科研背景的研究生、高校教师及工程技术人员,尤其适合从事智能优化算法研究、新能源系统优化、自动化控制、电力系统调度、无人机导航与路径规划等相关领域的研究人员。; 使用场景及目标:①用于高水平学术论文的复现与创新性研究,提升科研效率与成果产出;②应用于复杂工程系统的建模仿真与智能优化设计,如多能互补系统调度、无人机避障路径规划、微电网能量管理等;③作为智能优化算法的教学与学习资料,深入理解现代元启发式算法的设计思想与实现机制。; 阅读建议:建议读者结合文档中提供的Matlab代码与Simulink仿真模型,按照目录结构循序渐进地学习与实践,优先选择与自身研究方向契合的案例进行代码复现,重点关注算法参数设置、收敛曲线分析与多算法对比实验部分,以全面提升算法应用与科研创新能力。

28,403

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧