我用VB 编写了一个访问数据库的程序,报错为“运行时错误’-2147467259(0x80004005)’” 
【DBNMPNTW]connectionOpen(CreateFile()) 内容如下:
Dim con As ADODB.Connection 
Set con = New ADODB.Connection 
Dim rs As ADODB.Recordset Set rs = New ADODB.Recordset con.CommandTimeout = 0 
con.Open "Provider=SQLOLEDB.1;Persist Security Info=False;User ID= sa;password=sa;Initial Catalog=Bam;Data Source=192.45.0.45"

解决方案 »

  1.   

    用这个改改试试
    con.Open "provider=SQLOLEDB.1;server=local;persist security info=false;UID=sa;pwd=415024522;database=Drug"
    另con.CommandTimeout = 0
    最好不要设为0
      

  2.   

    我在一些电脑可以运行,但是有些电脑提示这个错误,我在ODBC数据源里面也增加了DSN ,但是还是不可以。数据路径存放路径怎么检查是否正确?已经开启了1433端口。
      

  3.   

    好像还是不可以啊? yangao同志!!!!
      

  4.   

    从语句来说,似乎没有什么问题。因为是SQLSERVER而不是Access,所以跟什么存放路径没有什么关系检查你的SQL有没有打补丁,没有的话要打上补丁,检查的方法是在查询分析器中运行: select @@version
    如果出来的版本号是8.00.760以下,就必须加补丁。另外如果这台机器上安装有isql的话,也可以去试着连接,测试是否网络是连通的。
      

  5.   

    我的机器没有装SQL  我只是编写一个程序访问一个服务器的SQL数据库。 有的电脑可以访问,有的不能访问,但是能PING通那台服务器。所有电脑的ODBC上的SQL的版本都是3.70.1146。
      

  6.   

    你是把生成的EXE文件考到别的机子上运行的吧   你有没有同时考一些和引用相关的DLL文件呢
      

  7.   

    con.CommandTimeout = 0 ?
    con.CommandTimeout = 30
    还差不多 
      

  8.   

    1,在客户端安装mdac2.8mdactyp.exe
    2,在客户端的按制面板中手工配制ODBC到SQL服务端(tcp/ip与named pipes都测试一下)