| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 731 人关注过本帖
标题:谁能解释一下,下面的循环中为什么会执行两次?
只看楼主 加入收藏
yitian2007
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-11-21
收藏
 问题点数:0 回复次数:6 
谁能解释一下,下面的循环中为什么会执行两次?
谁能解释一下,下面的循环中为什么会执行两次?
<%
 Set rs=server.CreateObject("adodb.recordset")
 rs.open "select * from review where id in (9,10)",conn,1,1
 While Not rs.eof
   conn.execute "insert into user2 (pid,postime) values('"&rs("id")&"','"&now&"')"
   rs.movenext
 Wend
 rs.close
 Set rs=Nothing
%>

  
结果会插入
'----------
id              pid         postime
1                9         2007-11-22 下午 03:13:32
2                10        2007-11-22 下午 03:13:32
3                9         2007-11-22 下午 03:13:32
4                10        2007-11-22 下午 03:13:32
'-------------
搜索更多相关主题的帖子: Set pid conn 
2007-11-22 15:25
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
<%
Set rs=server.CreateObject("adodb.recordset")
rs.open "select * from review where id=9 or id=10",conn,1,1
Do Until rs.eof
   conn.execute "insert into user2 (pid,postime) values('"&rs("id")&"','"&now&"')"
   rs.movenext
Loop
rs.close
Set rs=Nothing
这样呢?
%>
2007-11-22 15:36
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
<%
Set rs=server.CreateObject("adodb.recordset")
rs.open "select * from review where id=9 or id=10",conn,1,1
Response.Write "查找到"&rs.recordcount&"条数据"
'Do Until rs.eof
   'conn.execute "insert into user2 (pid,postime) values('"&rs("id")&"','"&now&"')"
   'rs.movenext
'Loop
rs.close
Set rs=Nothing
%>
看看显示多少条数据?
2007-11-22 16:20
slfyeye
Rank: 1
来 自:上海
等 级:新手上路
威 望:1
帖 子:163
专家分:0
注 册:2006-3-5
收藏
得分:0 
恩,按上面先试一下。

2007-11-22 16:22
yitian2007
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-11-21
收藏
得分:0 
查找到2条数据
2007-11-22 16:37
yitian2007
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-11-21
收藏
得分:0 
我在循环里加打印记录ID语名,只打印出9和10,没有第二次打印;但看结果好象第二次插入一样!
是不是数据库的问题,我用的是ACCESS数据库。
2007-11-22 16:39
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
<%
Dim i
Set rs=server.CreateObject("adodb.recordset")
rs.open "select * from review where id=9 or id=10",conn,1,1
For i=0 To rs.recordcount-1
   conn.execute "insert into user2 (pid,postime) values('"&rs("id")&"','"&now&"')"
   rs.movenext
Next
rs.close
Set rs=Nothing
%>
再试试?
2007-11-22 16:40
快速回复:谁能解释一下,下面的循环中为什么会执行两次?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018390 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved