用asp实现访问远程计算机上MDB access数据库文件的方法

  如果你用ODBC连接(DSN方式或其它方式)到远程计算机的MDB文件,这将产生一个错误:

  Microsoft OLE DB Provider for ODBC Drivers error '80004005' 大致意思是该文件可能被其他用户访问或无足够的权限访问。

  下面有两种方式,避免这个错误:

  方式a. 使用DAO引擎访问

  Dim File, Conn, RS

  Const ReadOnly = False

  File = "\\server\share\file.mdb"

  Set Conn = CreateObject("DAO.DBEngine.35").Workspaces(0).OpenDatabase(File,,ReadOnly)

  Set RS = Conn.OpenRecordset(SQL)

  方式b. ADO + Jet OLE DB provider方式

  Dim Conn, RS

  Set Conn = CreateObject("ADODB.Connection")

  Conn.Provider = "Microsoft.Jet.OLEDB.4.0"

  Conn.Open "\\server\share\file.mdb"

  Set RS = Conn.Execute(SQL)

  确定在运行ASP页面时有足够的访问权限以访问远程计算机上的MDB文件,在访问MDB文件前需要先登录到远程计算机,添加下面的代码:

  Set UM = CreateObject("UserManager.Server")

  UM.LogonUser "帐号", "口令", "域"

  ...

  open database

  ...

  UM.RevertToSelf