小弟初学VB,想用Data控件接连一个数据库,却总是说我的数据库是不可识别,我想问一下怎样解决?(我用的是VB6.0,数据库用的是Access2000)急,在线等!!!!!!!!!!!

解决方案 »

  1.   

    DATA只能连接ACCESS97。用ADODB对象来连接吧。
      

  2.   

    DATA只能连接ACCESS97。用ADODB对象来连接吧。
      

  3.   

    DATA只能连接ACCESS97。用ADODB对象来连接吧。
      

  4.   

    1 工程->引用,把当前版本的DAO(3.51)去掉,换为3.6版的。
    2 加入下列代码:
    dim db as dao.database, rs as dao.recordset
    set db = dbengine.opendatabase("数据库文件名")
    set rs = db.openrecordset("SQL语句")
    set data1.recordset = rs
      

  5.   

    给VB打补丁。或把office换成97版的。
      

  6.   

    ADO连接:
    工程--->引用--->Microsoft ActiveX Data Object 2.x(版本号)Option ExplicitDim WithEvents adoRS As Recordset
    Dim db As Connection
    '提数据事件
        Set db = New Connection
        db.CursorLocation = adUseClient
        db.Open"Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & App.Path & "\db1.mdb;Jet OLEDB:Database Password=1234;"
    '                           ##########################################
    '打开密码是1234的Access2000数据库db1.mdb
    '不需要密码,就把Jet OLEDB:Database Password=1234;这段去掉    Set adoRS = New Recordset
        
        adoRS.Open "SELECT * FROM 表", db, adOpenStatic, adLockOptimistic
        '赋值给 DataGrid 表
        Set DataGrid1.DataSource = adoRS
        '表刷新
        DataGrid1.Refresh
    '添加事件和保存
        adoRS.AddNew
        '保存
        adoRS![字段a] = text1.Text
        adoRS![字段b] = text2.Text
        adoRS.UpdateBatch adAffectAll'删除
        adoRS.Delete
        '重新赋值给表
        adoRS.Requery
        Set DataGrid1.DataSource = adoRS
        DataGrid1.Refresh    '其他相关操作:
        '上一条
        If Not adoRS.BOF Then adoRS.MovePrevious
        If adoRS.BOF And adoRS.RecordCount > 0 Then
             '已到最后返回
             adoRS.MoveFirst
        End If
        '下一条
        If Not adoRS.EOF Then adoRS.MoveNext    '下一条
        If adoRS.EOF And adoRS.RecordCount > 0 Then
              '已到最后返回
              adoRS.MoveLast
        End If
        '第一条
        If Not adoRS.BOF Then adoRS.MoveFirst
        '最末
        If Not adoRS.EOF Then adoRS.MoveLast
      

  7.   

    DATA只能连接ACCESS97。用ADODB对象来连接吧。
    具体的方法如下:
    Dim WithEvents adoRS As Recordset
    Dim db As Connection
    '提数据事件
        Set db = New Connection
        db.CursorLocation = adUseClient
        db.Open"Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & App.Path & "\db1.mdb;Jet OLEDB:Database Password=1234;"'1234密码可以不要
    Set adoRS = New Recordset
    adoRS.Open "SELECT * FROM 表", db, adOpenStatic, adLockOptimistic
    '赋值给 DataGrid 表
    Set DataGrid1.DataSource = adoRS
    '数据显示控件刷新
    DataGrid1.Refresh
      

  8.   

    data控件只能连接access97的数据库,如果你用的是access2000你就需要在access2000中把相应的数据库利用“工具-数据库实用工具-转换数据库-到早期的access数据库版本”把相应的数据库转换到access97版本,然后再用data控件连接。
    或者:在vb中选择“工程-部件-添加Microsoft ADO Data contral 6.0(oledb)”中的ado控件,
    ADO控件即支持access97也支持access2000。