从表中读取数据的问题从SQL Server插入一些数据

我有一个子表单,并且从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 

我不知道为什么数据没有出现在我的子表单中。当然,如果重新打开表单,一切都很好,但是我不想重新打开表单。我希望子表格数据在插入表格后会立即更新

bjkao2006 回答:从表中读取数据的问题从SQL Server插入一些数据

我相信,在将recordsource分配给子窗体之后,您需要从源数据刷新。
您的最后一行看起来无效(如果有效,语法验证后记录集将带有大写字母),请注释掉它。

请添加新的最后一行:

 Me.Query_subform.Refresh 

即使是我,刷新也可以做到... 然后重新测试。

本文链接:https://www.f2er.com/3168862.html

大家都在问