我通过ODBC连接DB2,怎么连接不上呢?报错信息:
Run-time error '-2147467259(80004005)': Specified driver could not be loaded due to system error 5(IBM DB2 ODBC DRIVER).有人遇到过这样的问题吗?我的连接代码:
conDB2Str = "DSN=tz;UID=tzde;PWD=password"
Set conDB2 = Nothing
Set conDB2 = New ADODB.Connection
conDB2.CursorLocation = adUseClient
conDB2.CommandTimeout = 60
conDB2.Open conDB2Str我在简历ODBC tz的时候,我是测试了连接了,是连接成功的.为什么在这里老是连接不上呢?

解决方案 »

  1.   

    或者谁知道是否可以直接用OLEDB连接DB2,怎么连接? 
    最好能给个例子.
      

  2.   

    http://www.connectionstrings.com/?carrier=ibmdb2
      

  3.   

    Tiger_Zhao:
    谢谢你的解答,但还是不行
    当我用下面这俩种provider时
    conDB2Str = "Provider=IBMDADB2;DSN=tz;UID=tzde;PWD=password" 
    conDB2Str = "Provider=DB2OLEDB;DSN=devedw;UID=edwdev;PWD=expedia"
    提示如下错误信息:
    Run-time error '3706':Provider cannot be found. It may not be properly installed.因为我们是在客户的机器上,所以不能安装这些,他们就给了我们一个ODBC,,用户,密码,server名这些信息.是否还有别的办法.
      

  4.   

    好像 DB2 必须安装专用的客户端才能使用,你们选用 DB2 的时候就没调查过?
    不要把一切数据库看成 Access 或 SQL Server,它们其实是微软在安装 ODBC 时自动安装了 Provider。
      

  5.   

    各位我的问题解决了.
    是因为我用来连接ODBC的程序速的电脑和ODBC所在的电脑不是同一台电脑.
      

  6.   

    我还想问各问题,是否可以通过代码来建立一个ODBC呢?能否给各例子
      

  7.   

    用 ODBC 得目的就是为了程序不需要关心数据库的配置,要是程序知道数据库的各个参数,直接按前面提过的链接中的方式完整拼接字符串就可以了。
      

  8.   

    那我现在没有ODBC,但我知道server,用户,密码,数据库这些信息,数据库是DB2,我可以直接连接?怎么连接呢?SQL SERVER是可以
    conSqlStr = "Provider=SQLOLEDB.1;Data Source=servername;UID=user;PWD=password;Initial Catalog=database;"
    这样可以连接,那DB2怎么连接呢?也通过同样的方式可以连接?
      

  9.   

    都不行啊.
    当我用下面这俩种provider时 
    conDB2Str = "Provider=IBMDADB2;DSN=tz;UID=tzde;PWD=password" 
    conDB2Str = "Provider=DB2OLEDB;DSN=devedw;UID=edwdev;PWD=expedia" 
    提示如下错误信息: 
    Run-time error '3706':Provider cannot be found. It may not be properly installed. 
      

  10.   

    不是说了安装客户端。你赶紧向 IBM 要一份如何使用 DB2 的手册读一遍。
      

  11.   

    不建议使用ODBC连接,还是直接用连接字符串连接。看一下DB2的帮助,肯定有的。
    GOOGLE也能搜索到。