关于access中SQL执行后更新顺序的问题,期待中。。。

zbjg 2006-05-16 11:25:52
在ASP+ACCESS中我连续执行了两条SQL
第一条是update的语句,  {使用conn.execute}
第二条是select的语句。 {使用rs.open sql,conn,1,1}
操作的是同一个表的同一条数据。

结果发现在执行第一条update后,从第二第select中得到的不是最新的数据 {两条语句在同一页面中}

试了很多参数都没有效果,而且数据库连接也是重新连接

期待高手指点。。。。。
...全文
99 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
starsword 2006-05-16
  • 打赏
  • 举报
回复
在update和select语句之间,把conn关闭再重新连接,试一下看看
mingxuan3000 2006-05-16
  • 打赏
  • 举报
回复
commit
danis_cn 2006-05-16
  • 打赏
  • 举报
回复
数据库肯定已经更新了,你可以看看数据库内容

我觉得是其他方面对俄原因,是不是页面缓存的原因?
cqq 2006-05-16
  • 打赏
  • 举报
回复
这个应该是其他的问题, 照你说的,先update再select 应该能够体现最新的更新的

要不你把代码都贴出来看看。
zbjg 2006-05-16
  • 打赏
  • 举报
回复
多谢各位,我发现问题的原因不完全是数据库SQL执行的问题
我使用的浏览器是firefox,代码在IE下是没问题的,
奇怪的是在firefox下update被执行了两次,而select被夹在两个update中执行了一下,
也没办法设断点跟踪,非常不理解

sub GetDisplayCounter(counterID)
OpenDB()

dim sqlStr

'increase the count
sqlStr = "update display set counter = counter + 1 where autoid = " + counterID
conn.Execute(sqlStr)

CloseDB()
end sub

    GetDisplayCounter(displayID)
OpenDB()
set displayRS = Server.CreateObject("ADODB.Recordset")
displaySQL = "select * from display where autoid=" & displayID
displayRS.Open displaySQL,conn,1,1
displayRS.Close()

28,391

社区成员

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

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