代码错误

来源:百度知道 编辑:UC知道 时间:2024/05/16 05:14:52
%>
<%
if session("popguanggaowin")="" then session("popguanggaowin")=0
if session("popguanggaowin")=0 then
sqltext="select * from popwin where cnflag=1 order by xuhao"
rs.Open sqltext,cn,1,1
top1=70
left1=120
do while not rs.EOF
winw=cint(rs("winw"))
winh=cint(rs("winh"))
%>
<script language=Javascript>
window.open("./myasp_popwin.asp?id=<%=rs("id")%>","","width=<%=winw%>,height=<%=winh%>,scrollbars=no,left=<%=left1%>,top=<%=top1%>")
</script>
<%
rs.MoveNext
top1=top1+30
left1=left1+50
loop
rs.Close
session("popguanggaowin")=1
end if
%>
这段代码,执行错误,提示是:ADODB.Recordset 错误 '800a0e79'

对象打开时,不允许操作。

/myasp_footpop.asp,行 9
谁能帮我解决一下,谢谢

可能原因:
1.sql语句出错(要插入或更新的字段的数值不能为空值)
2.打开数据库出错,没有在指定路径发现数据库

解决办法:
1.针对这种情况,在打开记录集之前输入一下语句:
response.write(sql) 'sql就是你的sql语句
response.end
仔细分析输出的这个sql有没有毛病。对照数据库看是不是有不能为空的字段没有赋值,等等。

2.在文件开头加入on error resume next
在打开数据连接的下一行加如:
if err.number<> 0 then
response.write("//////////")
response.end
end if
如果输出了////////就是数据连接有问题了。仔细检查连接字符串。问题就在这里了。(除了驱动和系统的原因)