1:请问ADO控件怎么设置当前工作路径,如果用代码申请ADO和写连接字符串我都会,可是ADO里都是对话框,连接字符串也无法加入语句,哎!因该怎么设置呀?2:我用代码先声明了一个名为cnn的ADODB.connectionstring对象和一个名为rs的ADODB.Recordset对象,在form_load 中该写的都写了,窗体中放置了一个DataGrid的控件,请问怎么用语句把DataGrid的每个字段和rs记录集绑定,如果使用ADO控件就很好办,可是用语句绑定我真是没用过,很急!谢谢帮帮忙

解决方案 »

  1.   

    不要用控件,在工程中引用ADO后,在form_load事件中写如下代码
    dim conn as new adodb.connection
    dim rs as new adodb.recordset
    conn.open"Provider=microsoft.jet.oledb.4.0;Persist Security Info=False;Data Source=(app.path+"\data.mdb")"'当前路径中的data.mdb
    rs.open "select * from table",conn.3,3
    set mshflexgrid.datasouce=rs
    就可以了
      

  2.   

    你可以将RS的记录集给DATAGRID的记录集
    set datagrid1.datasource=rs
    在DATAGRID中就可以显示RS的记录集了
      

  3.   

    通过程序设置啊!!
    ADODC1.Connectionstring = "Provider=microsoft.jet.oledb.4.0;Persist Security Info=False;Data Source=(app.path+"\data.mdb")"
      

  4.   


    Set DataGrid1.DataSource=rs
      

  5.   

    使用ado的例子Open 和 Close 方法范例
    该范例使用已经打开的 Recordset 和 Connection 对象的 Open 和 Close 方法。Public Sub OpenX()   Dim cnn1 As ADODB.Connection
       Dim rstEmployees As ADODB.Recordset
       Dim strCnn As String
       Dim varDate As Variant   ' 打开连接。
          strCnn = "Provider=sqloledb;" & _
          "Data Source=srv;Initial Catalog=pubs;User Id=sa;Password=; "
       Set cnn1 = New ADODB.Connection
       cnn1.Open strCnn
       
       ' 打开雇员表。
       Set rstEmployees = New ADODB.Recordset
       rstEmployees.CursorType = adOpenKeyset
       rstEmployees.LockType = adLockOptimistic
       rstEmployees.Open "employee", cnn1, , , adCmdTable   ' 将第一个雇员记录的受雇日期赋值给变量,然后更改受雇日期。
       varDate = rstEmployees!hire_date
       Debug.Print "Original data"
       Debug.Print "  Name - Hire Date"
       Debug.Print "  " & rstEmployees!fName & " " & _
          rstEmployees!lName & " - " & rstEmployees!hire_date
       rstEmployees!hire_date = #1/1/1900#
       rstEmployees.Update
       Debug.Print "Changed data"
       Debug.Print "  Name - Hire Date"
       Debug.Print "  " & rstEmployees!fName & " " & _
          rstEmployees!lName & " - " & rstEmployees!hire_date   ' 再查询 Recordset 并重置受雇日期。
       rstEmployees.Requery
       rstEmployees!hire_date = varDate
       rstEmployees.Update
       Debug.Print "Data after reset"
       Debug.Print "  Name - Hire Date"
       Debug.Print "  " & rstEmployees!fName & " " & _
          rstEmployees!lName & " - " & rstEmployees!hire_date   rstEmployees.Close
       cnn1.CloseEnd Sub
      

  6.   

    在FORM_Load或者模块中写代码
        Dim cnn As New ADODB.Connection
        Dim rs As New ADODB.Recordset
        cnn.Open "Provider=microsoft.jet.oledb.4.0;Persist Security Info=False;DataSource=" & App.Path & "\数据库名" '当前路径中的data.mdb
        rs.Open "select * from table", cnn, adOpenStatic, adLockOptimistic
        rs.CursorLocation = adUseClient   '注意:要设置游标为客户端游标,否则显示不了
        Set DataGrid.datasouce = rs
      

  7.   

    以上我更正一下:
    在FORM_Load或者模块中写代码
        Dim cnn As New ADODB.Connection
        Dim rs As New ADODB.Recordset
        cnn.Open "Provider=microsoft.jet.oledb.4.0;Persist Security Info=False;DataSource=" & App.Path & "\数据库名" '当前路径中的data.mdb
        rs.CursorLocation = adUseClient   '注意:要设置游标为客户端游标,否则显示不了
        rs.Open "select * from table", cnn, adOpenStatic, adLockOptimistic
        Set DataGrid.datasouce = rs