连接不上 sql server 请高手进来看看,相关代码及出错原因如下

qrcnu 2006-04-13 09:57:28
在 VB.net 里 相关程序如下

....
Public Shared sConn As String = "Persist Security Info=False;Integrated Security=SSPI;database=hos;server=localhost;Connect Timeout=30"
....

Public Sub Open()
If SqlConn Is Nothing = True Then
'建立数据库连接对象
SqlConn = New SqlConnection(Me.sConn)
'打开数据库连接
SqlConn.Open()
End If
End Sub

在 执行 SqlConn.Open()产生错误提示sql server 不存在 或访问被拒绝


==============================================

有关调用实时(JIT)调试而不是此对话框的详细信息,
请参阅此消息的结尾。

************** 异常文本 **************
System.Data.SqlClient.SqlException: SQL Server 不存在或访问被拒绝。
at System.Data.SqlClient.ConnectionPool.GetConnection(Boolean& isInTransaction)
at System.Data.SqlClient.SqlConnectionPoolManager.GetPooledConnection(SqlConnectionString options, Boolean& isInTransaction)
at System.Data.SqlClient.SqlConnection.Open()
at 医院管理系统.DataBase.Open()
at 医院管理系统.DataBase.RunSelectSQL(String sSQLString)
at 医院管理系统.frmHuaJia.frmHuaJia_Load(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 已加载的程序集 **************
mscorlib
程序集版本: 1.0.5000.0
Win32 版本: 1.1.4322.573
基本代码: file:///c:/windows/microsoft.net/framework/v1.1.4322/mscorlib.dll
----------------------------------------
mscorlib.resources
程序集版本: 1.0.5000.0
Win32 版本: 1.1.4322.573
基本代码: file:///c:/windows/assembly/gac/mscorlib.resources/1.0.5000.0_zh-chs_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
医院管理系统
程序集版本: 1.0.2288.39173
Win32 版本: 1.0.2288.39173
基本代码: file:///E:/医院管理系统.exe
----------------------------------------
System.Windows.Forms
程序集版本: 1.0.5000.0
Win32 版本: 1.1.4322.573
基本代码: file:///c:/windows/assembly/gac/system.windows.forms/1.0.5000.0__b77a5c561934e089/system.windows.forms.dll
----------------------------------------
System
程序集版本: 1.0.5000.0
Win32 版本: 1.1.4322.573
基本代码: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
System.Drawing
程序集版本: 1.0.5000.0
Win32 版本: 1.1.4322.573
基本代码: file:///c:/windows/assembly/gac/system.drawing/1.0.5000.0__b03f5f7f11d50a3a/system.drawing.dll
----------------------------------------
System.Xml
程序集版本: 1.0.5000.0
Win32 版本: 1.1.4322.573
基本代码: file:///c:/windows/assembly/gac/system.xml/1.0.5000.0__b77a5c561934e089/system.xml.dll
----------------------------------------
Microsoft.VisualBasic
程序集版本: 7.0.5000.0
Win32 版本: 7.10.3052.4
基本代码: file:///c:/windows/assembly/gac/microsoft.visualbasic/7.0.5000.0__b03f5f7f11d50a3a/microsoft.visualbasic.dll
----------------------------------------
System.Data
程序集版本: 1.0.5000.0
Win32 版本: 1.1.4322.573
基本代码: file:///c:/windows/assembly/gac/system.data/1.0.5000.0__b77a5c561934e089/system.data.dll
----------------------------------------
System.EnterpriseServices
程序集版本: 1.0.5000.0
Win32 版本: 1.1.4322.573
基本代码: file:///c:/windows/assembly/gac/system.enterpriseservices/1.0.5000.0__b03f5f7f11d50a3a/system.enterpriseservices.dll
----------------------------------------
System.Data.resources
程序集版本: 1.0.5000.0
Win32 版本: 1.1.4322.573
基本代码: file:///c:/windows/assembly/gac/system.data.resources/1.0.5000.0_zh-chs_b77a5c561934e089/system.data.resources.dll
----------------------------------------
System.Windows.Forms.resources
程序集版本: 1.0.5000.0
Win32 版本: 1.1.4322.573
基本代码: file:///c:/windows/assembly/gac/system.windows.forms.resources/1.0.5000.0_zh-chs_b77a5c561934e089/system.windows.forms.resources.dll
----------------------------------------

************** JIT 调试 **************
计算机的配置文件(machine.config)的
system.windows.forms 节中必须设置 jitDebugging 值。
编译应用程序时还必须启用\r\n调试。\r\n\r\n例如: \r\n\r\n<configuration>\r\n <system.windows.forms jitDebugging="true" />\r\n</configuration>\r\n\r\n启用 JIT 调试后,任何未处理的异常\r\n都将被发送到此计算机上注册的 JIT 调试器,\r\n而不是由此对话框处理。\r\n

...全文
241 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
amylove 2006-04-14
  • 打赏
  • 举报
回复
虽然来晚了一步,但还是想解释一下为什么,为什么不能用"Localhost",对于本地的数据库,你可以直接用"Server=.",这个"."就是代表本地数据库,Localhost不能标识是本地的数据库,这个只能在站点路径有用.切记!
AdaLoveLacer 2006-04-13
  • 打赏
  • 举报
回复
哈,这样都可以,不管怎么说,恭喜解决问题
copico 2006-04-13
  • 打赏
  • 举报
回复
恭喜解决问题
qrcnu 2006-04-13
  • 打赏
  • 举报
回复
刚刚找出原因 把 localhost 删掉就好了,可是不知为什么

谢谢 adalovelacer copico youlinga 的热心参与,
AdaLoveLacer 2006-04-13
  • 打赏
  • 举报
回复
关闭防火墙试一下,
因为你说"代码方面应该没有问题 ,因为在另一台机子上是可以运行的"
那就只有是机器配置上的问题了
qrcnu 2006-04-13
  • 打赏
  • 举报
回复
将 server=localhost 改为 server=127.0.0.1 试过了,还是出现一样的错误
AdaLoveLacer 2006-04-13
  • 打赏
  • 举报
回复
你将"server=localhost"改为"server=127.0.0.1"再试一下
copico 2006-04-13
  • 打赏
  • 举报
回复
你把sa也设个密码
qrcnu 2006-04-13
  • 打赏
  • 举报
回复
sql 的查询分析器是可以的,但就 sql 来说应该没有什么问题
就是用.net 和sql 连接时出现错误
AdaLoveLacer 2006-04-13
  • 打赏
  • 举报
回复
那么直接使用sql的查询分析器呢?能连上吗?
qrcnu 2006-04-13
  • 打赏
  • 举报
回复
在用 asp.net 连接sql server 也出现类似的错误 提示 sql 不存在或拒绝访问
qrcnu 2006-04-13
  • 打赏
  • 举报
回复
hos数据库是在 sa 身份下建立的,sa 设置的是空密码
在 sql server 属性(配置)里 安全性- 身分验证 也选的是 sql server 和 windows

这些代码在另一台机器上是可以连接上数据库的
qrcnu 2006-04-13
  • 打赏
  • 举报
回复
顶以下,希望vb.net的高手都能进来看看
youlinga 2006-04-13
  • 打赏
  • 举报
回复
是不是 服务器名改动了 ? 别大意了
copico 2006-04-13
  • 打赏
  • 举报
回复
可以肯定一点,是你的连接串出问题了

你看看 数据库的用户名和密码,和针对你 hos 的数据库登录名和密码正确否
qrcnu 2006-04-13
  • 打赏
  • 举报
回复
程序he 数据库是在同一个机器上

之后 将 .net 和 sql 都重新装了之后,还是不行
copico 2006-04-13
  • 打赏
  • 举报
回复
也就是说你这台机和SQL数据库服务器是连不上的
检查你的硬件方面的问题

如果确保代码无误,那肯定是网络的问题了

如果你装了SQL Server管理端,你直接连那台数据库服务器,看行不行
AdaLoveLacer 2006-04-13
  • 打赏
  • 举报
回复
你的数据库和web程序在同一台机器上吗?如果不在同一台机器上的话,就sConn 不能使用"Persist Security Info=False;Integrated Security=SSPI;database=hos;server=localhost;Connect Timeout=30"这个字符串,
你试下用"Persist Security Info=False;user id=sa;pwd=密码;database=hos;server=服务器名称;Connect Timeout=30"
qrcnu 2006-04-13
  • 打赏
  • 举报
回复
代码方面应该没有问题 ,因为在另一台机子上是可以运行的。
可能是连接数据库方面出现问题,但不知是什么问题

用 asp.net 写了一段连接数据库方面的代码,也是报错 ,告知 数据库不存在或拒绝访问
asp.net 错误如下

“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

SQL Server 不存在或访问被拒绝。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: SQL Server 不存在或访问被拒绝。

源错误:

生成此未处理异常的源代码只能在调试模式中进行编译时显示。若要启用该功能,请执行以下步骤之一,然后请求 URL:

1. 在生成错误的文件的顶部添加一个“Debug=true”指令。示例:

<%@ Page Language="C#" Debug="true" %>

或者:

2. 将以下节添加到应用程序的配置文件中:

<configuration>
<system.web>
<compilation debug="true"/>
</system.web>
</configuration>

请注意,第二种方法将使给定应用程序中的所有文件在调试模式下进行编译。第一种方法只使特定文件在调试模式下进行编译。

重要事项:以调试模式运行应用程序肯定会引起内存/性能系统开销。在部署到产品方案中之前,应该确保应用程序已禁用调试。

堆栈跟踪:


[SqlException: SQL Server 不存在或访问被拒绝。]
System.Data.SqlClient.ConnectionPool.GetConnection(Boolean& isInTransaction) +482
System.Data.SqlClient.SqlConnectionPoolManager.GetPooledConnection(SqlConnectionString options, Boolean& isInTransaction) +372
System.Data.SqlClient.SqlConnection.Open() +384
ASP.sqlserverconnect_aspx.page_load(Object sender, EventArgs e) +49
System.Web.UI.Control.OnLoad(EventArgs e) +67
System.Web.UI.Control.LoadRecursive() +35
System.Web.UI.Page.ProcessRequestMain() +731

--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:1.1.4322.573; ASP.NET 版本:1.1.4322.573

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧