在Access中,如果使用记录集更新表时出现该问题,则可能是因为未将记录集的属性设置为'可更新”或未使用适当的方法来提交更改。
以下是一个示例代码:
Private Sub btnUpdate_Click() Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset
Set cnn = CurrentProject.Connection Set rst = New ADODB.Recordset
rst.Open "SELECT * FROM Employee", cnn, adOpenKeyset, adLockOptimistic
'设置属性为可更新 rst.CursorType = adOpenKeyset rst.LockType = adLockOptimistic
Do While Not rst.EOF rst.Fields("Salary") = Format(rst.Fields("Salary") * 1.1, "Currency") rst.MoveNext Loop
'提交更改 rst.UpdateBatch rst.Close
Set rst = Nothing Set cnn = Nothing End Sub
在此示例中,将记录集的属性设置为'可更新”,并使用UpdateBatch方法提交更改。这样可以确保记录集中的更改会更新表中的数据。