因为数据库是access2000的,而我没有access2000,我用ado的Connection打开数据库,但我要将本数据库的前两个表打开(不知道表名),我应该如何知道表名呢?Dim sbcn As New ADODB.Connection
Dim rds As New ADODB.Recordset
Dim i As Integer
sbcn.ConnectionString = "driver={Microsoft access driver (*.mdb)};dbq=" & _
 App.Path & "\test.MDB;pwd="
sbcn.CommandTimeout = 20
sbcn.Open
''''''''
sbcn.Close

解决方案 »

  1.   

    引用.
    Microsoft Activex Data Objects 2.5 Library
    Microsoft Ado Ext 2.6 For DDL And Security
    '=====================================================
    Public mCon As ADODB.Connection
    Public mCat As ADOX.CatalogPublic DB_Name As String
    Public DB_Title As String
    Private Sub Command1_Click()
        Dim I As Long
        Dim TBL As ADOX.Table
        
        If Not mCon Is Nothing Then Set mCon = Nothing
        Set mCon = New ADODB.Connection
        
        mCon.Provider = "Microsoft.Jet.OLEDB.4.0"
        mCon.Mode = adModeRead
        mCon.CursorLocation = adUseClient
        mCon.Properties("Data Source") = "E:\WORKSHAR\CODE.MDB"
        mCon.Properties("Jet OLEDB:Database Password") = ""
        mCon.Open
        
        Set mCat = New ADOX.Catalog
        mCat.ActiveConnection = mCon
        
        For Each TABL In mCat.Tables
            Debug.Print TABL.Name
        Next
    End Sub
      

  2.   

    to:MSTOP(陈建华(东莞立晨企资)) 
    你真厉害,你们东莞立晨企资是干什么的,能和你成为朋友吗?
      

  3.   

    工程->引用->Microsoft Activex Data Objects 2.0 Library ,后面为版本号cn1.ConnectionString = "dsn=" & cboDSN1.Text & ";uid=" & txtUID1.Text & ";pwd=" & txtPWD1.Text
      cn1.Open
      
      Set rs = cn1.OpenSchema(adSchemaTables)
      
      lstTable1.Clear
      
      lblStatus1.Caption = "数据源连接成功,正在检索数据表..."
      
      DoEvents
      
      Do Until rs.EOF
        If Trim(rs!TABLE_TYPE) = "TABLE" Then lstTable1.AddItem Trim(rs!TABLE_NAME)
        rs.MoveNext
      Loop
      
      rs.Close
      Set rs = Nothing这是将表名取出来放到LISTBOX控件里