已有一个数据库,如何用DAO的方法连接数据库?如何在数据库中 新建数据表,如何把所有已建表的名字提取出来。如何提取某数据库的字段值?   
能否写出详细的代码?

解决方案 »

  1.   


    '1:引用dao   用dao连接
        Dim db As DAO.Database
        Set db = DBEngine.Workspaces(0).OpenDatabase("c:\test.mdb", False, False, "")
    '2:引用ado  用ado建表
        Dim cn As New ADODB.Connection
        cn.Open "provider=microsoft.jet.oledb.4.0;data source=e:\test1.mdb"
        cn.Execute "create table newtable(a int,b varchar(50))"
        cn.Close
        Set cn = Nothing
    '3:
    '请详细参阅ADO参考文档中OpenSchema
    '如:
    '功能:获取access库中表的个数及表的名称
    '用ado怎样实现
    '工程--->引用--->Microsoft ActiveX Data Object 2.x(版本号)
    '----------------------------------------------------------------------------
    Private Sub Form_Load()
    Dim adoCN   As New ADODB.Connection                '定义数据库的连接
    Dim strCnn   As New ADODB.Recordset
    Dim rstSchema As New ADODB.Recordset
    Dim I As Integer
       Str1 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\Northwind.MDB;Persist Security Info=False"
       adoCN.Open Str1
             
       Set rstSchema = adoCN.OpenSchema(adSchemaTables)
         
       Do Until rstSchema.EOF
            If rstSchema!TABLE_TYPE = "TABLE" Then
               out = out & "Table  name:  " & _
                   rstSchema!TABLE_NAME & vbCr & _
                   "Table  type:  " & rstSchema!TABLE_TYPE & vbCr
                I = I + 1
            End If
            rstSchema.MoveNext
       Loop
       MsgBox I
       rstSchema.Close
         
       adoCN.Close
    Debug.Print out
    End Sub