具体代码如下:但问题是DataGrid1没有任何数据,但运行又不报错!
Dim cn As ADODB.Connection
Dim strcn As String
Dim strora As String
Dim rs As ADODB.Recordset
strcn = "Provider=MSDAORA.1;Password=manager;User ID=system;Data Source=ora;Persist Security Info=True"
Set cn = New ADODB.Connection
cn.Open strcn
strora = "select * from dd"
Set rs = New Recordset
rs.CursorLocation = adUseClient
rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic
'Set Rs = CN.Execute(strsql)
rs.Open strora, cn, , , adCmdText
Set DataGrid1.DataSource = rs

解决方案 »

  1.   

    在Set DataGrid1.DataSource = rs后加DataGrid1.Refresh
      

  2.   

    加了DataGrid1.Refresh,但还是一样没有数据!
      

  3.   

    rs.CursorLocation = adUseServer
      

  4.   

    若改成rs.CursorLocation = adUseServer,程序会报错---行集合不能作为标签
      

  5.   

    用rs.CursorType = AdOpenDynamic呢?
      

  6.   

    Dim cn As ADODB.Connection
    Dim rs As ADODB.Recordset
    Dim strcn As String  
    Dim strora As Stringstrcn = "Provider=MSDAORA.1;Password=manager;User ID=system;Data Source=ora;Persist Security Info=True"
    Set cn = New ADODB.Connection
    cn.Open strcn
    strora = "select * from dd"
    Set rs = New Recordset
    set rs.a....=cn
    rs.CursorLocation = adUseClient
    rs.CursorType = adOpenKeyset
    rs.LockType = adLockOptimisticrs.Open strora
    Set DataGrid1.DataSource = rs
    datagrid1.refresh