Private Sub btnAdd_Click()
Dim RST As New ADODB.Recordset
With RST
Open "SELECT * FROM tblStandardFolders2009 WHERE StandardFoldersID = 0", fnCNN, adOpenDynamic, adLockOptimistic
.AddNew
!Description = Me!txtAddGeneric
!MakeNewContract = False
.Update
fnStandardFolders2009ID (RSD!StandardFoldersID)
.Close
End With
Set RST = Nothing
此代码将记录添加到我的一个表中。添加主键后,我需要获取它,以便可以在其他方法中使用它。根据Access,RSD!StandardFoldersID为“空”。有什么想法吗?
编辑:事后使用“ SELECT @@ Identity”确实可以,但是并不可靠,我知道还有更好的方法。
答案 0 :(得分:0)
尝试
Private Sub btnAdd_Click()
Dim RST As New ADODB.Recordset
With RST
Open "SELECT * FROM tblStandardFolders2009 WHERE StandardFoldersID = 0", fnCNN, adOpenDynamic, adLockOptimistic
.AddNew
!Description = Me!txtAddGeneric
!MakeNewContract = False
.Update
.Bookmark = .LastModified
fnStandardFolders2009ID (CLng(RST!StandardFoldersID))
.Close
End With
Set RST = Nothing
答案 1 :(得分:0)
我已经解决了这个问题,并认为我会在将来给任何对此有意见的人一个答案。 用于打开Recordset的连接对象的光标位置为“ adUseServer”。将光标位置更改为“ adUseClient”后,我可以看到新创建的记录的ID。