当前位置: 首页 > 图文教程 > 网络编程 > ASP > 用ASP打开远端MDB文件的方法

ASP
迁移到 ASP .NET:需考虑的重要问题(2)
ASP中优化数据库处理
结合XML, ADO, 以及ASP
在ASP中优化数据库处理
提高ASP性能的最佳选择(一)
返回UPDATE SQL语句所影响的行数的方法
ASP如何使用MYSQL数据库
安全维护 IIS asp 站点的高级技巧
也谈ASP中的RESPONSE属性
ASP提速技巧
在ASP中如何访问Novell下的数据库
改善ASP性能和外观的技巧集锦(上)
改善ASP性能和外观的技巧集锦(中)
改善ASP性能和外观的技巧集锦(下)
利用ASP在浏览器上打印输出
用ASP文件实现CPU的使用率始终保持100%
ASP 0115 Error的解决方案
Varchar与char的区别
探讨一下rs(0)和rs(fieldname)的执行效率
连接WEB数据库的ADO性能提高技巧

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 158 ::
收藏到网摘: n/a

如果你用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 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