我在程序里用到了两个ADO控件和一个datagrid控件,我想让datagrid控件能根据不同的命令动态的连接不同的ADO控件,我原以为可以用这样用:
Private Sub Command6_Click()
 DataGrid2.DataSource = Adodc2
End Sub
可结果不行,好象只能在程序设计时强行与某一个ADO进行绑定,而在程序运行过程中却无法动态的选择,麻烦前辈指点一下,谢谢!

解决方案 »

  1.   

    连接SQL SERVER:Private Sub Form_Load()
    '工程--->引用--->Microsoft ActiveX Data Object 2.x(版本号)    Dim CN   As New ADODB.Connection                '定义数据库的连接
        Dim Rs   As New ADODB.Recordset
        CN.ConnectionString = "Provider=sqloledb;Data Source=pmserver;Initial Catalog=northwind;User Id=sa;Password=xxx;"    CN.Open
        Rs.CursorLocation = adUseClient
        Rs.Open "select * from employees", CN, adOpenDynamic, adLockOptimistic
        Set DataGrid1.DataSource = Rs
    End Sub
      

  2.   

    连接access工程--->引用--->Microsoft ActiveX Data Object 2.x(版本号)    Dim CN   As New ADODB.Connection                '定义数据库的连接
        Dim Rs   As New ADODB.Recordset    CN.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\NWIND.MDB;Persist Security Info=False"
        CN.Open    Rs.CursorLocation = adUseClient
        Rs.Open "select * from employees", CN, adOpenDynamic, adLockBatchOptimistic    Set DataGrid1.DataSource = Rs
      

  3.   

    你可以用代码改变DataGrid的DataSource ,就可以动态的绑定
    用代码最灵活
      

  4.   

    同意楼上的,他是我的偶像啊。微软的MVP哦!
      

  5.   

    第一種:
    Set DataGrid1.DataSource = Adodc1第二種:
    Private Sub Form_Load()
        Dim strConn As String
        Dim pubConn As New ADODB.Connection
        Dim rsTable As New ADODB.Recordset
        Dim strSQL As String    strConn = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=develop; password=12345;Data Source=ServerName"
        pubConn.Open strConn    rsTable.CursorLocation = adUseClient
        strSQL = "select  * from TableName"
        rsTable.Open strSQL, pubConn, adOpenDynamic, adLockOptimistic
        Set DataGrid1.DataSource = rsTableEnd Sub