用ASP打开远端MDB文件的方法

发表于:2007-07-13来源:作者:点击数: 标签:
如果你用ODBC connection (DSN or DSN-less)来访问远端的(UNC path) 数据库 , OLEDB会出现以下错误信息: Microsoft OLE DB Provider for ODBC Drivers error ’80004005’ [Microsoft][ODBC Microsoft Access Driver] The Microsoft Jet database engine ca

  如果你用ODBC connection (DSN or DSN-less)来访问远端的(UNC path)数据库, OLEDB会出现以下错误信息:  

  Microsoft OLE DB Provider for ODBC Drivers error ’80004005’   

  [Microsoft][ODBC Microsoft Aclearcase/" target="_blank" >ccess Driver] The Microsoft Jet database engine cannot open the file ’(unknown)’. It is already opened exclusively by another user, or you need permission to view its data.  

  你完全可以避免这种错误--ASP和ActiveX支持两种方式打开MDB文件的DSN-less连接,或由其它机器访问MDB文件。  


  1. DAO database (only for small load)   

  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)   

  2. 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的用户有NT的数据库及共享访问权限。   

  假定有权限的话,你亦可访问其它机器中的开放数据连接:   

  

  http://www.pstruh.cz/  

  Set UM = CreateObject("UserManager.Server")   

  UM.LogonUser "Login with the rights", "Password", "Domain"

  ...  

  open database  

  ...   

  UM.RevertToSelf   

  

原文转自:http://www.ltesting.net