创建数据库连接时产生运行时错误!-2147467259(80004005)
strCn = "Provider=sqloledb;Server=188.19.1.1;Database=ercj;Uid=sa;Pwd=fh****;"
cn.Open strCn 
    [dbnmpntw]ConnectionOpen(CreateFile()).请问如何处理!我自己在ODBC中直接创建一个数据源时也出现这种错误,不知道什么原因,怎么解决?

解决方案 »

  1.   

    strCn = "Provider=sqloledb;Server=188.19.1.1;Database=ercj;Uid=sa;Pwd=fh****;"
    改成:strCn = "Provider=sqloledb.1;Server=188.19.1.1;Database=ercj;Uid=sa;Pwd=fh****"
      

  2.   

    发生的原因
    以上这条错误消息的产生,是因为你没有对MS Access数据库创建lock file (.ldb)文件的权限。系统默认是,lock file (.ldb)的创建是在一个被看作是Microsoft Access .mdb 文件的同一目录下。
    解决方法
    按以下步骤进行:
    1、准许访问数据库的用户(通常是IUSR_<computername> account)对这个共享文件夹完全支配。
    2、由于lock file (.ldb)文件往往是被设置为只读(read-only),所以,在共享往往是被受限制的。那么,我们可以试着使用以下这段示范代码来改变连接方式:
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Mode = adModeShareDenyWrite '8' 在Adovbs.inc中的定义
    '---- ConnectModeEnum Values ----
    'Const adModeUnknown = 0
    'Const adModeRead = 1
    'Const adModeWrite = 2
    'Const adModeReadWrite = 3
    'Const adModeShareDenyRead = 4
    'Const adModeShareDenyWrite = 8
    'Const adModeShareExclusive = &Hc
    'Const adModeShareDenyNone = &H10
     
      

  3.   

    你可以参考一下,这个是指Access下的,我在网上搜索的!
      

  4.   

    我是在VBA中使用这些语句的
    strCn = "Provider=sqloledb;Server=188.19.1.1;Database=ercj;Uid=sa;Pwd=fh****;"
    cn.Open strCn 
    不知道怎样处理?