删除表数据时,有时会删除不干净,不知为何?

HBJMSHOP 2011-01-29 03:34:12
在前台系统中,将本地access数据上传完毕后,我需要删除表所有记录,可有时候有的表还会留下一条没删完,这是为什么?
删除access数据库各表记录的语句为:
DELETE FROM 表名


请教大侠,这是为什么?
...全文
79 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2011-01-31
  • 打赏
  • 举报
回复
不要用CMD,直接用conn.execute

Qtconn.Execute sSQL
HBJMSHOP 2011-01-31
  • 打赏
  • 举报
回复

我清除数据时,是这样处理的,看一下,我准备 在Form_Unload事件执行时,再检查一遍,如未清除干净,准备在执行一次下面的过程

Private Sub sjsc()
Dim errnum As Double
errnum = 0
On Error GoTo CheckError3
Cmd.ActiveConnection = Qtconn
Cmd.CommandType = adCmdText
Qtconn.BeginTrans
With Qtconn
frm_sjsc.Caption = "正在清除本地数据 !"
sSQL = "DELETE * FROM tb_xsmx"
Cmd.CommandText = sSQL
Cmd.Execute , , adExecuteNoRecords
sSQL = "DELETE * FROM tb_sprhj"
Cmd.CommandText = sSQL
Cmd.Execute , , adExecuteNoRecords
sSQL = "DELETE * FROM tb_spyhj"
Cmd.CommandText = sSQL
Cmd.Execute , , adExecuteNoRecords
sSQL = "DELETE * FROM tb_syyrhj"
Cmd.CommandText = sSQL
Cmd.Execute , , adExecuteNoRecords
sSQL = "DELETE * FROM tbHyxftj"
Cmd.CommandText = sSQL
Cmd.Execute , , adExecuteNoRecords
sSQL = "DELETE * FROM tb_kxfmx"
Cmd.CommandText = sSQL
Cmd.Execute , , adExecuteNoRecords
sSQL = "DELETE * FROM tb_yyyrhj"
Cmd.CommandText = sSQL
Cmd.Execute , , adExecuteNoRecords
End With
frm_sjsc.Caption = "本地发生数据上传成功 !"
black1:
With Qtconn
If errnum = 0 And .Errors.Count = 0 Then
Basemove = True
.CommitTrans
Else
Basemove = False
.RollbackTrans
End If
End With
Exit Sub

CheckError3:
frm_sjsc.Caption = "警告:数据清除错误,请及时向管理员反馈 !"
MsgBox Error(Err.Number), vbExclamation + vbInformation, "提示"
errnum = errnum + Err.Number
GoTo black1
End Sub
dfghdfherty 2011-01-30
  • 打赏
  • 举报
回复
我想应是你系统在删除access数据库各表记录时,又触法事件,上传了数据。
DELETE * FROM 表名

7,712

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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