datagrid删除某行时出现的错误, 期待高手的解答.

hengxin54 2003-06-18 12:40:59
当删除datagrid中某行数据时, 此行删除正确, 但紧接着就报一个错误提示:行句柄引用了一个已被删除的行或被标识为删除的行.
我是这样实现的:
rs.open sql, conn,1,3 '这样也试过:rs.open sql,conn,3,3
set datagrid1.datasource=rs
加上datagrid.refesh也报错.
...全文
43 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
gemgama 2003-06-19
  • 打赏
  • 举报
回复
这样试试:
With rs
.Delete
DoEvents
.MoveNext
If .EOF Then .MoveLast
End With
csdngoodnight 2003-06-19
  • 打赏
  • 举报
回复

rs.Delete
rs.Requery

set datagrid.DataSource = rs


再看看打开数据库的读写设置和锁类型。

..........,adOpenStatic, adLockOptimistic
southdoor 2003-06-19
  • 打赏
  • 举报
回复
rs.update
adodc1.refresh
删除后,先将记录更新,再控件更新。试一试,我也遇到过你这种情况,就是这么解决的。
hengxin54 2003-06-19
  • 打赏
  • 举报
回复
还是不行啊
救救我啊.......
wamlaw 2003-06-18
  • 打赏
  • 举报
回复
。。。。。。
set rs=nothing
con.execute("select .............")
set datagrid1.datasource=rs
hengxin54 2003-06-18
  • 打赏
  • 举报
回复
我在设计数据库结构时都是定义的ID号为主键, 所以记录集中都有主键
qingming81 2003-06-18
  • 打赏
  • 举报
回复
记录集中最好有一个主键。
qingming81 2003-06-18
  • 打赏
  • 举报
回复
你的删除代码可能有问题,删除后要用它绑定的记录集来删除和刷新。如
With rs
.Delete
.MoveNext
If .EOF Then .MoveLast
End With
hengxin54 2003-06-18
  • 打赏
  • 举报
回复
to strongfisher(Haiwolf):
这样还是不行, set xx.datasource=nothing后再设置数据源就不行了, datagrid里的数据全被清空了
wei1027 2003-06-18
  • 打赏
  • 举报
回复
试试 CNT.Execute "delete from……"
strongfisher 2003-06-18
  • 打赏
  • 举报
回复
.
.
.

With rsAssetActivity
.CursorType = adOpenDynamic
.CursorLocation = adUseClient
.LockType = adLockPessimistic
.Source = "SELECT * FROM tblassetactivity WHERE serialnumber ='" & adoAsset.Recordset.Fields("serialnumber").Value & "'"
Set .ActiveConnection = cnnCMMS
.Open
End With
Set dgAssetActivity.DataSource = Nothing
Set dgAssetActivity.DataSource = rsAssetActivity

End Sub
strongfisher 2003-06-18
  • 打赏
  • 举报
回复
Private Sub cmdActiveDelete_Click()
On Error Resume Next
Dim intYesNo As Integer


If dgAssetActivity.SelBookmarks.Count = 0 Then
MsgBox "请选择一条记录以供操作!"
Exit Sub
End If

Set rsAssetActivity = New ADODB.Recordset
With rsAssetActivity
.CursorType = adOpenDynamic
.CursorLocation = adUseClient
.LockType = adLockPessimistic
.Source = "SELECT * FROM tblassetactivity WHERE serialnumber ='" & adoAsset.Recordset.Fields("serialnumber").Value & "'"
Set .ActiveConnection = cnnCMMS
.Open
End With

intYesNo = MsgBox("确实要删除这条参数吗?", vbYesNo)

If intYesNo = vbYes Then
Dim varBmk As Variant
For Each varBmk In dgAssetActivity.SelBookmarks
rsAssetActivity.Bookmark = varBmk
rsAssetActivity.Delete
Next

End If
rsAssetActivity.Close
.
.
.
.
csdngoodnight 2003-06-18
  • 打赏
  • 举报
回复
加上datagrid.refesh也报错:

datagrid..Requery
jQuery EasyUI是一组基于jQuery的UI插件集合,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面。开发者不需要编写复杂的javascript,也不需要对css样式有深入的了解,开发者需要了解的只有一些简单的html标签 1.3.6更新 Bug treegrid: getChecked方法不能返回正确的行. fixed. tree: 异步树,在onlyLeafCheck:true时复选框不显示正确. fixed. Improvement treegrid:继承datagrid组件所有的selecting和checking方法。 linkbutton:图标对齐方式,支持值:'top','bottom','left','right'。 linkbutton:添加"size"属性,支持值:'small','large'。 linkbutton:添加的onClick事件。 menubutton:添加"menuAlign"属性,允许用户设置顶级菜单对齐。 combo:添加"panelAlign"属性,支持值:'left','right'。 calendar:"formatter"、"styler"和"validator"选项可用于自定义日历日期。 calendar:添加的onChange事件。 panel:添加"method","queryParams"和"loader"属性。 panel:添加"onLoadError"事件。 datagrid:添加"onBeginEdit"事件。 datagrid:添加"onEndEdit"事件。 datagrid:添加"sort"方法和"onBeforeSortColumn"事件。 datagrid:"combogrid"编辑器集成到datagriddatagrid:添加"ctrlSelect"属性,允许使用ctrl+click 多选 slider:添加"converter"选项,允许用户决定如何将一个值转换为滑块的位置或滑块位置值。 searchbox:添加"disabled"属性。 searchbox:添加"disabled","enable","clear","reset"方法。 spinner:添加"readonly"属性、"readonly"方法和"onChange事件。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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