当保存,修改,删除的按钮按下后,应如何在数据库内容变更好,表格控件里的内容刷新? 是不是要用RS.CLOSE 后,再RS.OPEN吗?

解决方案 »

  1.   

    不是绑定的.是这样开启的.
    DataConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path1 + ";Persist Security Info=False" + ";Jet OLEDB:Database Password=软讨彩在单本线名探站只票理评发关数相论件"
    cnndb.ConnectionString = DataConnectString
    cnndb.Open
      

  2.   

    不是绑定的.是这样开启的.
    DataConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path1 + ";Persist Security Info=False" + ";Jet OLEDB:Database Password=软讨彩在单本线名探站只票理评发关数相论件"
    cnndb.ConnectionString = DataConnectString
    cnndb.OpenstrSQL = "select * from data order by index0 desc"
    rst1.Open strSQL, cnndb, adOpenDynamic, adLockOptimistic    With vaSpread1
        i = 1
        Do While Not rst1.EOF
        .MaxRows = i
        .Row = i
         .Col = 1: .Text = rst1!index0
    ***
        rst1.MoveNext
        Loop     
        End With
    rs.addnew
    **
    rs.update
    vaSpread1.Refresh
      

  3.   

    Set DataGrid1.DataSource = rst
      

  4.   

    我用的是vaSpread1表格控件.这是一个很老的版本.
    这个控件不能绑定RS
    原来是要用vaSpread重新获取RS内容才行的.
      

  5.   

    或者你在vaSpread1表格控件中删除对应的行,能行的话,那个控件没用过,你找找能不能删除指定的行
      

  6.   

    Public rst1 As New ADODB.RecordsetstrSQL = "select * from data order by index0 desc"
    rst1.Open strSQL, cnndb, adOpenDynamic, adLockOptimistic***rst1.Refresh   这句不能用.
    为何这个记录集没有ReFresh
      

  7.   

    多谢各位的帮忙.
    控件没绑定,是对格子一个一个赋值的.
    新增和删除后都再执行一下这个代码:
    Private Sub grid_Def()
    Dim i As Integer
        With vaSpread1
            .MaxRows = 0
        i = 1
        
        Do While Not rst1.EOF
        .MaxRows = i
        .Row = i
         .Col = 1: .Text = rst1!index0
         .Col = 2: .Text = Format(rst1!index1 & "-" & rst1!index2 & "-" & rst1!index3, "yyyy-mm-dd")
         .Col = 3: .Text = rst1!index4
         .Col = 10: .Text = rst1!index11
         .Col = 11: .Text = rst1!index12
        i = i + 1
        rst1.MoveNext
        Loop
        End With
    End Sub
      

  8.   

    请问各位,在新增,修改,删除的正常操作是否为:
    先关闭,再OPEN?
      

  9.   

    我现在再在新增按钮的最后加上:
    rst1.Close
    Form_Load
    这样就实现了功能,只是如果数据多了,就感到有点慢了.
    ------------------------------
    Private Sub Form_Load()
    rst1.CursorLocation = adUseClientDTPicker1.Value = DatestrSQL = "select * from data order by index0 desc"
    rst1.Open strSQL, cnndb, adOpenKeyset, adLockOptimistic    With vaSpread1
           .MaxRows = 0
        i = 1
        Do While Not rst1.EOF
        .MaxRows = i
       .Row = i
         .Col = 1: .Text = rst1!index0
    **
         .Col = 26: .Text = rst1!index120
        i = i + 1
        rst1.MoveNext
        Loop
       End With
        
    End Sub
      

  10.   

    1、重新读一遍,刷新一遍grid
    2、添加、修改、删除表格