2014-08-28 66 views
0

我想在MS Access前端向MYSQL数据库添加新记录时找到#Deleted问题的解决方法。我想通过这个VBA做到这一点:#在MS Access前端删除到MYSQL数据库

Private Sub Surname_AfterUpdate() 
DoCmd.RunCommand acCmdSaveRecord 
Me.Refresh 
Dim rs As DAO.Recordset 
    Dim pk As Long 

    pk = Me.ID 
    Me.Requery 
    Set rs = Me.RecordsetClone 
    rs.FindFirst "[ID]=" & pk 
    Me.Bookmark = rs.Bookmark 
    Set rs = Nothing 



End Sub 

有了这个,我试图让本ID,将其存储为书签,保存和刷新,并返回到书签的ID。

但是,它好像VBA无法找到该ID,因为它尚未传输到数据库,所以我得到一个错误,如'无效使用null'。

我也尝试添加TIMESTAMP等没有成功 - 仍然得到中#Deleted ...

请帮助。

感谢

埃尔顿

+0

在插入事件后你可以试试这个命令me.recordSource = me.recourdSource,这与me.requery具有相同的效果。通过这种方式将最后一个条目显示的查询排序为新的条目始终位于顶部? – 2014-08-28 13:16:22

回答

0

创建直通查询在Access,

SELECT LAST_INSERT_ID(); 

这将能够获得最后插入的ID,你可以用它来指代记录。希望这可以帮助。