[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访问被拒绝

错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访问被拒绝
/Bestlove/inc/conn.asp, 第 4 行
<%
dim db
set db=server.createobject("adodb.connection")
db.open "database=bbs; uid=sa; pwd=sa; driver={sql server};server=localhost"

%>

2000年的资料 - -!

在ASP中常见的错误80004005信息和解决办法
2000-4-15 动网先锋

作者:BatMan

错误信息(错误信息我不用翻译成中文了吧,呵呵,大家谅解)
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access 97 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.
原因:
这个错误发生在当IIS使用匿名帐号(通常是IUSR)时,该帐号在NT中对数据库所在的目录
没有正确的权限.(这就是为什么在Win95和PWS下没问题,因为win95根本就没有目录权限这一说)
检查文件和目录的权限. 确定你能够在该目录中有能够新建和删除临时文件的权限。
这些临时文件其实是数据库建立在同一个目录下的文件, 但是要注意的是,有可能这些文件
也可能建立在别的目录,例如 /Winnt.

使用NT的文件监视程序监视文件失败时到底是访问了什么目录。
这个NT的文件监视程序可以在这个地方下载http://www.sysinternals.com.

如果你对数据库使用了一个网络地址,例如映射地址,就要检查一下共享文件和目录的权限,

还要检查一下数据源文件(DSN)是否被别的程序标志成为正在使用中,
这些别的程序一般是Visual InterDev,关闭任何一个InterDev中的正打开和数据库连接的项目。

这个错误还可能发生在这种情况:如果在DSN中使用了一个UNC路径(就是通用命名协议),请改用
本地路径进行测试,因为如果对本地数据库使用UNC也可能出错。
还可能发生在这种情况,如果服务器要访问Access中的一个表,而这个表却联接在一个网络服务器上。

错误信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access 97 Driver] Couldn't use '(unknown)'; file
already in use.
原因:
多人使用时数据库被锁定。

错误信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Data source name not found and no default
driver specified.
原因:
最可能的原因是ConnectString是一个在global.asa中初始化的Session变量 ,但是global.asa
却没有正常工作。解决办法是,检查赋值时是否正确:(在你的asp中加入下面的代码)
<%= "'auth_user' is " & request.servervariables("auth_user")%>
<P>
<%= "'auth_type' is " & request.servervariables("auth_type")%>
<P>
<%= "connection string is " & session("your_connectionstring")%>
<P>
还有一个原因就是你在你的ConnectString中加入了多余的空格,例如
DSN = MyDSN; Database = Pubs;
试试改成下面这个样子:
DSN=MyDSN;Database=Pubs;

如果是global.asa还没有工作,检查该文件是否在运用程序的根目录中,或者是虚拟目录的根目录中。

还有可能错误出现的原因是DSN名称没找着,这可以采用我提供的id=36767的办法解决。
最后是检查是否安装了最新的驱动程序,既是否是最新的MDAC版本。

错误信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Data source name not ??
原因:
这个错误有可能是出现在你的计算机上软件安装(或则反安装)的顺序上。
如果ODBC的版本不一致的话,就会发生该错误。
解决办法是安装最新版本的MDAC

错误信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Access 97 ODBC driver Driver]General error Unable to open
registry key 'DriverId'.
原因:
这个错误发生在爱从注册表中读取数值的时候。 使用regedit32.exe检查你的注册表的权限。
你也可以使用NT中的注册表监视程序(NTRegMon)来看读取失败信息。 该程序到这找:http://www.sysinternals.com

错误信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC SQL Server Driver][dbnmpntw]ConnectionOpen (CreateFile()).
原因:
两个原因:当一个数据库中包含有分别在不用机器上的许可关系时,
这也可能发生在同一台机器上,当你给一个关系设置了UNC路径,而另一个关系却是本地路径。
错误原因是:
当用户使用IIS匿名帐号登录后,对本地这台机器而言他是有权的,但是对于一个UNC路径的机器,
另外这台机器是不会认为你当前匿名登录的帐号在它那上面也是合法的。
这样它就不允许你访问它上面的资源,导致错误。

两个解决办法:
1。在IIS工具中,改变IIS匿名帐号成另外一个基于域的帐号。(也就是不使用匿名登录)
2。或则在那台你要访问资源的机器上也创建一个和当前匿名帐号同样的帐号,使用同样的密码。

错误信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005' Microsoft][ODBC
Microsoft SQL Driver] Logon Failed()
原因:
该错误是由SQL Server产生的,当它不接受或则不能够认识这个登录帐号的时候,或者没有使用管理员身份登录,
也可能是在NT中没有SQL影射帐号造成的。

使用系统管理员帐号(SA)登录,一般密码应该为空.注意,这时必须使用CoonectString而不能够使用DSN文件。
因为DSN中没有保存用户名和密码。
检查NT是否给SQL映射了帐号。

错误信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC SQL Server Driver][SQL Server] Login failed- User: Reason:
Not defined as a valid user of a trusted SQL Server connection.
原因:
原因同上。
试试这个办法:在SQL Server的Enterprise Manager中,选择Server/SQL Server/Configure[ASCII
133]/Security Options/Standard.
如果是运行在IIS4中,取消选择该项目的Password Synchronization选项。

错误信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access 97 Driver] Couldn't lock file.
原因:
也许是没有正确的权限生成Access数据库的锁定文件(.ldb)
默认时,该文件和你的数据库是同一个目录的。
给匿名帐号全权访问数据库共享目录的权限。

有时是因为文件是因为共享时有意使用了只读的权限限制。试试使用下面的代码。
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Mode = adModeShareDenyWrite '8

错误信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access 97 Driver] '(unknown)' isn't a valid
path. Make sure that the path name is spelled correctly and that you are
connected to the server on which the file resides.
原因:
路径非法。最可能发生在当Global.asa和CoonecntString被使用到另外一台机器上的时候。

错误信息
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC SQL Server Driver][SQL Server] The query and the views in
it exceed the limit of 16 tables.

原因:
查询太复杂了,对查询有限制。

错误信息:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC SQL Server Driver][DBMSSOCN] General network error. Check
your network document
原因:
当装有SQL Server的机器改名的时候。但是DSN还使用了原来的机器名。

2 楼lanying(蓝鹰)(问个不休)回复于 2002-07-11 09:29:57 得分 0 Application("eintranetString")="DSN=eintranet;uid=sa;pwd=;"Top

参考资料:http://www.80diy.com/home/20020711/06/865260.html

温馨提示:内容为网友见解,仅供参考
无其他回答

Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server不存在或访问...
Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server不存在或访问被拒绝是设置错误造成的,解决方法为:1、在附加文件目录下找到.mdf文件,点击右键,查看“属性”,选择“安全”选项卡,点击“编辑”编辑按钮。2、在弹出的对话框选择”添加“按钮。3、在弹出的对话框选择”高级“按钮。4、在弹出的...

[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访 ...
一。未建立ODBC数据源 控制面板——管理工具——数据源(ODBC)建立数据源 二。服务器未启动 启动SQL SERVER 服务器

...microsoft] [odbc SQL Server Driver][DBNETLTB]SQL Server 不存在...
检查sql服务启动了没有 如果是网络连接数据服务器,就检查一下网络是否通畅,是否因为是防火墙或其他系统系统设置问题引起的

[Microsoft][ODBC SQL Server Driver][Shared Memory]SQL Server 不存 ...
(1)打开Windows控制面板,双击控制面板中“管理”→“ODBC数据源”图标,打开“ODBC数据源管理器”对话框,选择“文件DSN”项。(2)单击“添加”按钮,在“创建数据源”对话框中选择服务器驱动程序为“SQL Server”,单击“下一步”按钮,如图所示。在弹出的对话框的数据源名称编辑框中输入:C:\\Prog...

...17,级别16,[Microsoft][ODBC SQL Server Driver][DBMSLPCN]SQL Server...
使用 telnet 命令检查SQL Server服务器工作状态 === telnet <服务器IP地址> 1433 如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP\/IP 连接 如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动 SQL Server 服务,也...

Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server不存在或访问...
如果保证服务器端数据库启动,并且笔记本能ping通服务器的话 开始-运行cliconfg,启用tcp\/ip和named pipe 应该就可以了。

[Microsoft][ODBC SQL Server Driver][Shared Memory]SQL Server 不存 ...
一般来说,要查如下步骤:1. 确认数据库是否允许远程连接 2. 确认数据库服务是否正常启动 3. 确认数据库服务器的防火墙开通 4. 确认客户端到服务器网络畅通 5. 确认连接字符串正确,包括:主机名\\实例名,端口 6. 确认数据库是否允许混合登录方式 这样可以么?

[Microsoft] [ODBC SQL Server Driver] [SQL Server] 无法打开登录'xxx...
以下可能的原因:登陆账号不存在\/账号密码错了 DB name与原来的不对\/ DB不存在\/ DB脱机了\/ DB 恢复中..登陆账号没有访问此DB的权限\/ 权限不对\/ 孤立帐号问题...

[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访 ...
[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访问被拒绝\/Bestlove\/inc\/conn.asp, 第 4 行<% dim db set db=server.createobject("adodb.connection") db.open "database=bbs; uid=sa; pwd=sa; driver={sql server};server=localhost"%> 展开 ...

SQL2008连接ODBC问题
[DBNETLIB][ConnectionOpen(connect()).]SQL Server 不存在或拒绝访问。 现从网上查阅问题解决办法有如下几种: (A)1:你如果是独立上网的请把21端口打开.局域网把1433端口打开就可以了. 2;关闭防火墙! (B)把数据库连接的 SqlLocalName="(local)" 的(local) 改成 IP试试。可以把(local) 该成127.0.0.1,...

相似回答