davidyu720 | 30 四月, 2008 18:22
Windows XP上IIS ASP使用Oledb方式连接Oracle10g数据库,提示错误:
ADODB.Connection (0x800A0E7A)
未找到提供程序。该程序可能未正确安装。
Error Type:
ADODB.Connection (0x800A0E7A)
Provider cannot be found. It may not be properly installed.
普通的应用程序却能正常访问数据库。以前的ASP用的是8i的client和server,从未遇到此问题。
后来找到原因:是Oracle目录的授权问题。
解决办法:将文件夹Oracle_HOME(如: D:\oracle\ora10g) 对IUSR_XXX用户进行授权,而且要选中:替换子目录权限。
另外,特意测试如下:
用9i的client访问9i的数据库:
D:为NTFS文件系统;将D:oracleora92binOraOLEDB.dll文件为IUSR_XXX添加一个“禁止”的权限;重启IIS后,ASP页面就无法访问数据库了。
但不知为何10g需要显式地对Oracle_HOME目录进行授权???
| « | 八月 2008 | » | ||||
|---|---|---|---|---|---|---|
| 一 | 二 | 三 | 四 | 五 | 六 | 日 |
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |