各位网友,大家好:
我现在有这样一个问题:我用vb6.0中的Data控件选择了DatabaseName后,再选择RecordSource连接Access2000的数据库中的表格时老是说我这个Access2000的mdb文件格式不对,而如果用Access97生成的mdb文件就不会存在这个问题。由于以后导入数据的需要,我不想用Access97来完成这个项目,请问各位高人有什么好的解决办法吗?前提是一定要连接到Access2000数据库。谢谢各位,马上给分的!!!

解决方案 »

  1.   

    不会啊,我的没问题
    你先看看你的data控件的connect属性中有没有 Access 2000 这个选项有就一定可以
    我的有这个驱动,完全没有问题我的环境是VB6.0 + SP5 ,WinXP,OfficeXP
      

  2.   

    因為你用了Provider=Microsoft.Jet.OLEDB.3.51,太底只支持Access97
    請改用Microsoft.Jet.OLEDB.4.0建議要學會寫程序連數據庫﹐不要依靠控件。
      

  3.   

    那如果是vb5.0英文版的话,装sp5有用吗?因为我现在这个系统必须要用英文来实现,vb6.0只是做个测试,还是谢谢各位高人的指点!!!一定给分哈!!!
      

  4.   

    还有Ado控件是在Component中添加组件对话框中的那一个,谢谢!!!
      

  5.   

    用ADO控件生成连接字符串,用data控件,不利于程序的维护与扩展,没有多少公司用拖控件的程序员。
      

  6.   

    如果你是使用 Data Control 来连結 Access 2000 的资料库时:你必須在設定 Data Control 的 Source 前先加上一行
    Set Data1.Recordset = rsDAO36 'rsDAO36 is a DAO 3.62、如果你是引用「Microsoft DAO 3.51 Object Library」来访问 Access 2000 的资料库时:請加入【工程】【部件】「Microsoft DAO 3.6 Object Library」
      

  7.   

    两种办法
    A、 安装Office使用ODBC数据源配置一个Access 2000数据源 用ADO的ODBC方式连接这个数据源就OK了 (不许扔西红柿,说你呢,还扔)
    B、 把你的vb打上补丁SP4 或SP5都可以(喂。扔几个鸡蛋晚饭就解决了)
      

  8.   

    因为小弟我以前一直是用Java写程序的,现在有一个项目要用vb来写,一下子脑子转不过来了。请问如何用Ado技术来连接Access2000的数据库呢?我现在在Odbc中创建一个用户DSN名为test,就是我需要连接的数据库,可是我在VB程序的Form_load事件中写以下这些代码:
    Dim cn As New ADODB.Connection
    Dim rs As New ADODB.Recordset
    Dim qy As New ADODB.Command
    Const scn = "uid=sa;pwd;DSN=test;database=工程材料数据库"
    cn.Open scn
    Set rs = cn.Execute("select * from 工程材料表")
    DBGrid1.DataSource = rs
    以上这段代码我想要把数据显示在DataGrid控件上。
    我已经把Microsoft ActiveX Data Object 2.0 Library引入到项目中,还需要些其他什么库吗?
    出现以下这些错误描述:
    Run-time error:'-2147468259(80004005)'
    [Microsoft][ODBC 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序。
    请问出这个错是什么原因啊?是我的代码有问题吗?
    如果用Ado来连接数据库应该怎样来写代码?谢谢!!!
      

  9.   

    前面一个问题不用看了,还是请各位帮我看一下这个问题把:
    现在我在Form_Load事件中写如下代码用Ado连接Access 2000的数据库:
    Dim result As String
    Dim szPath As String
    Dim strCnn As String
    Dim db As New ADODB.Connection
    Dim rs As New ADODB.Recordset
    szPath = "d:\工程材料数据库.mdb"
    strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & szPath
    db.Open strCnn
    rs.CursorLocation = adUseClient
    rs.Open "select * from 工程材料表", db, adOpenDynamic, adLockPessimistic
    Set DBGrid1.DataSource = rs
    rs.Close
    db.Close
    为什么代码在运行到Set DBGrid1.DataSource = rs时,会出现以下的错误:
    Run-time error '430'
    Class doesn't support Automation的错误。
    如果去掉出错的这句话Set DBGrid1.DataSource = rs程序运行正常。但是将数据显示在DataGrid控件上的功能就没有了,请问这是什么道理啊?马上给分的!!!谢谢!!!