用原始的ado对象来连数据源。
声名一个adodb.connect,一个adodb.recordset
connect.open'数据源,用户,密码';
recordset.open'connect,sql,adopendynamic,adlockoptimistic'
datagrid.recordset=recordset

解决方案 »

  1.   

    是set datagrid.datasource=recordset吧
      

  2.   

    应该是set datagrid.datasource = recordset,但那样datagrid还是显示不了数据
      

  3.   

    在工程中引用Microsoft Activex Data Objects 2.5 Library 
      Dim cnn As Connection
      Dim rs As Recordset
      Dim Sql As String
      Set cnn = New ADODB.Connection
      Set rs = New ADODB.Recordset
      cnn.Open "Provider;Data Source;userid;……"
      Sql="……"
      rs.Open Sql, cnn, adOpenKeyset,adLockOptimistic
      Set datagrid1.datasource=rs
      

  4.   

    use this :datagrid1.addmember =adodc1.recordset
      

  5.   

    Dim cnn As Connection
      Dim rs As Recordset
      Set cnn = New ADODB.Connection
      Set rs = New ADODB.Recordset  cnn.Open "Provider=SQLOLEDB.1;Persist Security Info=False;Password=pass;User ID=user;Initial Catalog=databasename;Data Source=Servername;auto translate=false"  rs.Open "select * from table",cnn,adOpenKeyset,adLockOptimistic
    Set DataGrid1.DataSource = rs