我有一个问题,即添加(覆盖现有的123键)不起作用,如果发生冲突,如何强制更新行?
db.OpenRecordset("table1", dbOpenTable)
.AddNew ' create a new record
.Fields("key") = "123"
.Update ' stores the new record
当DB没有密钥123 时,代码有效
答案 0 :(得分:0)
如果您正在使用DataTable,则需要使用LoadDataRow方法,该方法可以添加新行或更新现有行。我不知道Recordset中是否存在此方法。
答案 1 :(得分:0)
你有这个标记的VBA和ado.net。但ADO.Net不适用于VBA。你能澄清一下吗?
假设你在VBA:
Public Sub Example()
Dim db As DAO.Database
Set db = Access.CurrentDb
With db.OpenRecordset("table1", dbOpenDynaset)
.FindFirst "Key=123"
If .NoMatch Then
.AddNew ' create a new record
.Fields("key") = "123"
.Update ' stores the new record
Else
.Edit
.Fields("myfield") = "foo"
.Update
End If
.Close
End With
db.Close
End Sub