困惑

sumnny 2002-06-25 02:28:59
这是动站htm模版新闻系统最终版中open.asp里面的一段代码,我在使用access数据库时没有问题,改成sql数据库时出错。
articleid=request("id")
path=request("path")
filename=request("filename")
set rs=server.createobject("adodb.recordset")
sql="update article set hits=hits+1 where newsID="&articleid
rs.open sql,conn,1,1
rs.close
conn.close
response.redirect path&"/"&filename
%>

后来我把response.redirect path&"/"&filename放到rs.close前面就不出错了。
这是为什么呢?
按理说,原代码rs.close之后的response.redirect path&"/"&filename也应该没有作用才是啊,但是并没有出错!
哪位能解释!
...全文
48 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mustang_zr 2002-06-26
  • 打赏
  • 举报
回复
把response.buffer设为true看看怎么样?
sumnny 2002-06-26
  • 打赏
  • 举报
回复
谁看看啊?
sumnny 2002-06-26
  • 打赏
  • 举报
回复
zyhowe(白芒芒厚地高天)的回答可以解决newsid是uniqueidentifier数据类型是存在的错误。:)
int时sql="update article set hits=hits+1 where newsID="&articleid没有错误,但在我改成uniqueidentifier时,就说rs.open sql,conn,1,1错误。
照着zyhowe(白芒芒厚地高天)的试了一下发现通过了,呵呵,谢了!

数据库不同,执行语句的差异这么大嘛?这就是我的困惑!
marf_cn 2002-06-25
  • 打赏
  • 举报
回复
问微软好了。都是他们做的东西。
不是可以解决了吗?干吗钻牛角尖呢?
sumnny 2002-06-25
  • 打赏
  • 举报
回复
17行-rs.close
sumnny 2002-06-25
  • 打赏
  • 举报
回复
下面是数据库连接:
conn.asp
------------------------------------------
<%
dim conn
dim connstr
on error resume next
connstr="DBQ="+server.mappath("mynews.asp")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
%>
------------------------------------------
原open.asp
------------------------------------------
<%@ LANGUAGE="VBSCRIPT" %>
<!--#include file="articleconn.asp"-->
<%response.buffer=false
dim sql
dim path
dim filename
dim rs
dim listname
dim articleid

articleid=request("id")
path=request("path")
filename=request("filename")
set rs=server.createobject("adodb.recordset")
sql="update article set hits=hits+1 where newsID="&articleid
rs.open sql,conn,1,1
rs.close
conn.close
response.redirect path&"/"&filename
%>
------------------------------------------
这个程序在access数据库下是正确的,但是sql下报错
错误类型:
ADODB.Recordset (0x800A0E78)
/strong/news/open.asp, 第 17 行
我稍微改了一下,在sql下就通过了
------------------------------------------
rs.open sql,conn,1,1
response.redirect path&"/"&filename
rs.close
conn.close
------------------------------------------
原程序本身在access下是可以调试通过的,所以说应该不会是程序本身的问题!
我是奇怪为什么同样的程序在不同的数据库下会一个对,一个错!
zyhowe 2002-06-25
  • 打赏
  • 举报
回复
sql="update article set hits=hits+1 where newsID='"&articleid&"'"
zyhowe 2002-06-25
  • 打赏
  • 举报
回复
sql="update article set hits=hits+1 where newsID='"&articleid&"'"
MeXP 2002-06-25
  • 打赏
  • 举报
回复
那就是rs.close
或者
conn.close
出错了
将全部代码贴出来

28,391

社区成员

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

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