你可能使用了recordset的默认的连接,默认是只读的单行集。
而datagrid要求是多行的记录集。不要使用AdOpenForwardOnly选项进行连接。

解决方案 »

  1.   

    你的数据源是否有刷新,而datagrid 的数据还没有改变。
      

  2.   

    看看这个:rs_hwdan.CursorLocation = adUseClient
    rs_hwdan.Open "select * from hwdan", db, adOpenDynamic, adLockBatchOptimistic
    SET DATAGRID1.DATASOURCE=RS_HWDAN
      

  3.   

    With Rs_J_Cktzd_Sp
            If .State = adStateOpen Then
                .Close
            End If
            .ActiveConnection = adoCN
            .CursorLocation = adUseClient
            .CursorType = adOpenDynamic
            .LockType = adLockBatchOptimistic
            .Source = "SELECT * FROM J_Cktzd_Sp WHERE hth='" & W_J_Cktzd.Text1(14).Text & "' order by id "
            .Open
            .Sort = "id"
        End With
        Set  DataGrid1.DataSource = Rs_J_Cktzd_Sp