[尝试删除记录时出现错误2501

问题描述 投票:1回答:2

我有一个Access数据库前端,我试图在表单上放置一个按钮以删除当前记录。我使用以下VBA代码删除记录:

If Me.NewRecord Then
    Me.Undo
    Exit Sub
End If

DoCmd.RunCommand acCmdDeleteRecord

Me.Requery
Me.Refresh

当我使用表单插入数据库时​​,在DoCmd上返回运行时错误'2501'] >>。但是,如果我在数据库中已经存在的记录上运行它,则代码将按预期完成。

此外,没有其他人正在访问该数据库表,而我只打开了一个表单。

当我在访问中手动从链接表中删除它们时,遇到了相同的错误,但是我可以使用SQL Server Management Studio从数据库中将它们删除。

什么会导致这种情况发生?

编辑

我进行了更多调查,发现我也无法使用访问权限在基表中编辑新记录。我收到有关另一个用户更改记录的错误。

我有一个Access数据库前端,我试图在表单上放置一个按钮以删除当前记录。我使用以下VBA代码删除记录:If Me.NewRecord然后Me.Undo ...

sql-server-2008 ms-access-2007
2个回答
1
投票

除了建议在表中具有时间戳字段(当您使用它从Access进行升迁时,SSMA助手会将此时间戳添加到所有表中,这绝对是我的建议),我对您的代码有一些批评。我会这样写:


0
投票

这不是您的特定问题的答案,但是关于获得Error 2501 while trying to delete a record的问题标题,这是另一种情况:

© www.soinside.com 2019 - 2024. All rights reserved.