| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3036 人关注过本帖
标题:用记录集中修改数据为什么加上一句rs.movefirst后出现错误提示
只看楼主 加入收藏
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1528
专家分:180
注 册:2006-6-3
结帖率:79.38%
收藏
 问题点数:0 回复次数:4 
用记录集中修改数据为什么加上一句rs.movefirst后出现错误提示
<!--#Include file = "ADOVBS.INC"-->
<%
  Dim cn1,rs,filepath
  filePath = Server.MapPath("a1.mdb")
  Set cn1 = Server.CreateObject("ADODB.Connection")
  cn1.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & filePath
  Set rs = Server.CreateObject("ADODB.RecordSet")
  '对工资为1200元的记录进行修改
  rs.Open "select * from S where 工资=1500",cn1,1,3  
  
 rs.movefirst----->(错误提示BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。取消后显示正常)
  do while not rs.eof
   if rs.eof then
   exit do
   end if
   
  rs("工资")=1400
  rs.Update
  rs.movenext
  loop
  '关闭记录集于数据库连接
  rs.Close
  Set rs= Nothing
  cn1.Close
  Set cn1 = Nothing
  Response.Redirect "8-5.asp"
%>
搜索更多相关主题的帖子: 记录 工资 Microsoft where file 
2013-05-23 11:46
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1528
专家分:180
注 册:2006-6-3
收藏
得分:0 
高人还没有出现呀?请快速指教 。
2013-05-23 14:12
w8980637
Rank: 2
等 级:论坛游民
帖 子:4
专家分:12
注 册:2013-5-31
收藏
得分:0 
这句话完全可以去掉,我觉得根本就没有用。应为你都把数据库里指针移动到第一条去。还有你这句(
if rs.eof then
   exit do
   end if)
我觉得可以去掉,完全没用(理论上是不会执行到这一句的)。你的do while语句在数据指针移到最后一条的时候是会退出的。
2013-05-31 22:15
dzt0001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:5
帖 子:1281
专家分:4998
注 册:2005-10-12
收藏
得分:0 
因为sql查询结果是空的,所以指针不能movefirst
这句不用写,如果有记录,指针默认是指向第一条的

[ 本帖最后由 dzt0001 于 2013-6-1 09:51 编辑 ]

----我怎能在别人的苦难面前转过脸去----
2013-06-01 09:50
ysf0181
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:55
帖 子:914
专家分:2385
注 册:2006-10-4
收藏
得分:0 
rs.movefirst----->(错误提示:BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。取消后显示正常)

一般函数或者内置函数,你不给值时,都有默认的。默认第一条了,你还搞第一条,那就重复,编辑器就返回错误信息了。

ASP讨论QQ群:251346273
2013-06-03 11:22
快速回复:用记录集中修改数据为什么加上一句rs.movefirst后出现错误提示
数据加载中...
 
   



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

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