【发布时间】:2019-11-04 05:45:40
【问题描述】:
我有一个子表单,从 SQL Server 插入到表中以访问表后数据没有更新
我有带有一些对象(表、表单、子表单)的 MS Access 应用程序。 我的子表单记录源是其中一张表,当我打开表单时,包括显示的子表单数据。
我连接到 SQL Server 并从 dbo.telefone 获取一些数据并在单击按钮之类的事件后插入到我的表 (GetTelServer) 中,但是尽管我刷新或重新查询表单或子表单,但新数据并未在子表单中更新-形式。我真的很困惑为什么会这样?
Dim strSQL1 As String
Dim rst1, RstAccess As ADODB.Recordset
strSQL1 = "SELECT * from dbo.telefone"
Set rst1 = New ADODB.Recordset
With rst1
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open strSQL1, cn, adCmdText
End With
Set RstAccess = New ADODB.Recordset
RstAccess.Open "SELECT * from GetTelServer", cnAccess, adOpenKeyset, adLockOptimistic
Do Until rst1.EOF
RstAccess.AddNew
RstAccess.Fields("Name").Value = rst1.Fields("Name").Value
RstAccess.Fields("job").Value = rst1.Fields("job").Value
RstAccess.Update
rst1.MoveNext
Loop
Me.Query_subform.Requery
Me.Refresh
RstAccess.Close
Set RstAccess = Nothing
cnAccess.Close
Set cnAccess = Nothing
Me.Query_subform.Form.RecordSource = "SELECT * from GetTelServer"
'even
set Query_subform.Form.recordset= RstAccess
我不知道为什么数据没有出现在我的子表单中。当然,如果重新打开表单一切正常,但我不想重新打开表单。我希望插入表格后立即更新子表单数据
【问题讨论】:
标签: sql-server ms-access recordset subform