各位:
我在数据库中用delete命令删除一条记录后,会出现一个对话框,内容为: "行句柄引用了一个已被删除的行或标识为删除的行",我的部分代码如下: if msgbox("sure delete?",vbyesno+vbinformation)=vbyes then
dataReceipt.Delete
DataReceipt.MovePrevious
If DataReceipt.BOF = True Then
DataReceipt.MoveNext
End If
Else
Exit Sub
End If
DataGrid1.Refresh 请大家帮帮小弟,急,在线等待
我在数据库中用delete命令删除一条记录后,会出现一个对话框,内容为: "行句柄引用了一个已被删除的行或标识为删除的行",我的部分代码如下: if msgbox("sure delete?",vbyesno+vbinformation)=vbyes then
dataReceipt.Delete
DataReceipt.MovePrevious
If DataReceipt.BOF = True Then
DataReceipt.MoveNext
End If
Else
Exit Sub
End If
DataGrid1.Refresh 请大家帮帮小弟,急,在线等待
解决方案 »
- 如何改变摄像头(视频图像)的大小????????????????????
- 《Setup Factory 7.0.1.0 汉化版》中含有Backdoor.Prosti.hd木马的问题
- DTPicker怎样不显示当前日期?
- vb如何用moden来电显示或完成语音提示主人不在或转接
- 大家好啊!我有个问题:就是在vb里怎么实现象“温度计”那样的升降变化啊。各位ggjjddmm帮我啊。
- 300分求个答案! TDBGrid使用的问题.
- 如何连接远程(INTERNET)数据库?
- 用API将ListView的Icons、SmallIcons设置为system image lists不能添加带图标的ListItem问题
- 这段代码错在哪里!急~~~
- 急!vb中有什么函数可以修改系统时间?(送分)
- 我不该在这发帖。实在不会了??关于evb(关键是evb中的人太少了)向各位求助看看。
- 作一个小冬冬,遇到问题了,高手帮忙看看
if msgbox("sure delete?",vbyesno+vbinformation)=vbyes then
dataReceipt.Delete
DataReceipt.Movenext
If DataReceipt.EOF = True Then
DataReceipt.MoveLast
End If
Else
Exit Sub
End If
DataGrid1.Refresh
dataReceipt.Delete
DataReceipt.MovePrevious
If DataReceipt.BOF = True Then
DataReceipt.Requery
End If
Else
Exit Sub
End If
DataGrid1.Refresh
后要.movenext就是要把记录集移动一下,
不然记录集还会停留在已被删除的记录上,就会出现你所遇到的错误。
dataReceipt.Delete
DataReceipt.MovePrevious
If DataReceipt.BOF = True Then
DataReceipt.MoveNext
End If
Else
Exit Sub
End If
DataGrid1.Refresh这样的代码你不写在一个控件中,你写在什么地方?????我真怀疑你这个程序是想怎么做~~~~如果是别的话,也许要用SQL语句进行操作,你最好说清楚一些在解决吧~
我这段代码如放在TOOLBAR中,就会出现错误,但如果是把这段代码放在一个COMMAND控件中,就不会出错了,请帮忙!谢谢!
小弟的代码如下:(在工具条上)
select case
case "del"
If Not (set_reg_c1.BOF Or set_reg_c1.EOF) Then
set_reg_c1.Delete
set_reg_c1.MoveNext
set_reg_c1.UpdateBatch
End If
............
end select
DataReceipt.MoveNext"
应该改为:
“If DataReceipt.BOF = True Then
DataReceipt.Movefirst”
不是下一条记录,而是第一条记录
还应该加上这条语句:
If DataReceipt.eof = True Then
DataReceipt.Movelast
dataReceipt.Delete
DataReceipt.MoveNext
If DataReceipt.EOF Then DataReceipt.MovePrevious
If DataReceipt.BOF Then DataReceipt.Refresh
Else
Exit Sub
End If
DataGrid1.Refresh
dataReceipt.Delete
DataGrid1.Refresh
两句前各加一句
on error resume next
或者用调试菜单,逐句运行,在出错的前面加上面的语句试试,看行不行。我平常就是这样做的,要不这样,EOF、BOF、指针什么的很难协调控制,只能这样将就着做了。