错误号:3704 错误描述:对象关闭时,不允许操作

作者 : 模板吧小编 本文共1070个字,预计阅读时间需要3分钟 共743人阅读

“错误号:3704 错误描述:对象关闭时,不允许操作。sql=select top 10 ContentID,a.SortID,a.GroupID,a.Exc…….”
inc/AspCms_MainClass.asp文件,大约900行,原来代码为:

复制代码 代码如下:

if str=”content” or str=”news” or str=”product” or str=”down” or str=”pic” then

sperStrs =conn.Exec(“select SpecCategory+’_’+SpecField from {prefix}SpecSet Order by SpecOrder Asc,SpecID”, “arr”)

if isarray(sperStrs) then

for each spec in sperStrs

sperStr = sperStr&”,”&spec

next

end if

我们修改为:

复制代码 代码如下:

if str=”content” or str=”news” or str=”product” or str=”down” or str=”pic” then

sperStrs =conn.Exec(“select SpecCategory+’_’+SpecField from {prefix}SpecSet Order by SpecOrder Asc,SpecID”, “arr”)

if isarray(sperStrs) then

sperStr=””

for each spec in sperStrs

sperStr = sperStr&”,”&spec

next

end if

因为程序在同一个页面循环{aspcms:content}标签时,原来的代码在后面再调用该标签时会不断累加 sperStr值,造成该标签数量越多,后面的SQL查询字段,而Access数据库,单表最多255个字段,SQL查询里面一次查询也最多不超过255个字段,当累加的字段数超过255个时,运行程序就会出错。此时,会引起inc/AspCms_MainClass.asp文件,大约152行的程序代码,内容是:

复制代码 代码如下:

If Not DebugMode Then

if Err then

errid=Err.number:errdes=Err.description:Err.Clear:dbConn.close:set dbConn=nothing:isConnect=false

echoErr err_03,errid,errdes&”sql=”&sqlStr

end if

end if

如果有错误,程序代码会关闭数据。于是就出现了前文的错误 。

本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!
25模板吧 » 错误号:3704 错误描述:对象关闭时,不允许操作