初学者的菜菜问题,求教----感激!!!!

sunniful 2005-09-14 03:16:49
我在运行下面这段程序时,报错在Adodc1.Recordset.Delete位置.显示的错误是:
"实时错误:键列信息不足或不正确.更新影响到多行."而且点击按纽后数据库中的所有记录都被删掉了.郁闷!!
Private Sub btnReadTags1_Click()
Dim intRetValue As Integer
Dim intmyval As String
Dim myval As String
btnReadTags1.Enabled = False
intRetValue = Communication.ReadAllTags(txtUseAntenna)
If intRetValue = 1 Then
ShowMessage "读取标签成功!"
Dim nCounter As Integer
ShowMessage "显示标签读取列表:"
For nCounter = 0 To 2 'intCurrentReaderReads - 1
intmyval = Communication.GetCurrentTagid(nCounter)
ShowMessage intmyval
Adodc1.RecordSource = "select * from 商品信息表 where 商品EPC码='" + intmyval + "'"
'Adodc1.Refresh
If Trim(Adodc1.Recordset.Fields("商品EPC码")) <> intmyval Then
myval = MsgBox("该记录在数据库中不存在!", vbOKOnly, "提醒!")
Else
myval = MsgBox("是否要删除该记录", vbYesNo, "提示!")
If myval = vbYes Then
Adodc1.Recordset.Delete
Adodc1.Recordset.MoveNext
If Adodc1.Recordset.EOF = True Then
Adodc1.Recordset.MoveLast
End If
'Adodc1.Recordset.Update
End If
End If
Next nCounter
'intCurrentReaderReads = 0
Else
ShowMessage "读取标签失败! 错误代码: " & intRetValue
End If
End Sub
...全文
72 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunniful 2005-09-14
  • 打赏
  • 举报
回复
谢谢楼上的各位好心人。我的问题解决了。正是Blade_hxh(水上飞) 的正解。
rayxu 2005-09-14
  • 打赏
  • 举报
回复
我的意思是说,你的数据库里面的表,没有建立好他们之间的"关系"比方说,一个表和一个表之间,他们是"一对多的关系",并且有"级联删除"的关系,那么当你在删除另一个表的记录的时候,他们之间就会有关系,所以你删除的时候出现问题.
把他们之间建立正确的关系,或者取消就可以了.
Blade_hxh 2005-09-14
  • 打赏
  • 举报
回复
键列信息不足或不正确.更新影响到多行

我觉的,可能是你的数据库中有完全相同的记录(两条或多条记录的相应字段信息完全相同),先把数据库的记录整理好,再看看
sunniful 2005-09-14
  • 打赏
  • 举报
回复
楼上大哥,能具体点是指什么关系吗?谢过!
rayxu 2005-09-14
  • 打赏
  • 举报
回复
键列信息不足或不正确.更新影响到多行


可能是你的数据库内的表建立了关系,你在删除时候当然会出现这种提示.
把数据库内的表的关系先建好,或者先取消掉再试一下.
sunniful 2005-09-14
  • 打赏
  • 举报
回复
好郁闷啊
sunniful 2005-09-14
  • 打赏
  • 举报
回复
怎么没人来救命啊!!

7,763

社区成员

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

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