+ -
当前位置:首页 → 问答吧 → 问个有点难度的asp问题Server.Execute

问个有点难度的asp问题Server.Execute

时间:2011-11-24

来源:互联网

有2个asp页面
a.asp b.asp

a.asp页面中,往数据库添加一条信息。
rs.addnew 
rs("myname")="刘德华"
rs.update  
rs.close

然后,通过
Server.Execute("b.asp")
调用b页面。


而,b.asp页面中的代码是从数据库中读取最新的一条记录。
select top 1 * from [biao] order by id desc


可是,我发现,b.asp无法读取到a.asp页面中刚才添加的那条信息。读到的是倒数第二条信息。每次刷新都是一样。
是不是a页面操作的数据还没真正更新到数据库?


是不是:在同一个页面中,上游的代码新添加到数据库的数据,下游的代码还来不及读取到? 要关闭页面后再打开才可以?

作者: fisherboy   发布时间: 2011-11-24

可能是还没插入到数据库 你就开始查询了 操作太快了

作者: hefeng_aspnet   发布时间: 2011-11-24

这个和 Execute关系不大。
Execute 的asp中连接数据库的话,用的是自己的连接。
对同一个表操作,要防止脏读的话,需要看数据库所支持的隔离等级和锁。
用 Connection.IsolationLevel 可以设置,但要数据库支持。

作者: hookee   发布时间: 2011-11-24