为什么哦为什么赢了';VB.NET是否连接到此数据库?

为什么哦为什么赢了';VB.NET是否连接到此数据库?,vb.net,sql-server-2005,connection-string,database-connection,Vb.net,Sql Server 2005,Connection String,Database Connection,首先,我可以使用SQLServerEnterpriseManager连接到这两个数据库,这样我就知道服务器已启动并可用。其中一个是SQL1,另一个是SQLTEST 在我的程序中,当我使用以下连接字符串时,它可以正常工作: conn = New DBConnect("Data Source=SQL1;Initial Catalog=SignInspection;Integrated Security=SSPI") 但是,如果我将SQL1更改为SQLTEST连接超时,除了超时错误之外,我不会得到任

首先,我可以使用SQLServerEnterpriseManager连接到这两个数据库,这样我就知道服务器已启动并可用。其中一个是SQL1,另一个是SQLTEST

在我的程序中,当我使用以下连接字符串时,它可以正常工作:

conn = New DBConnect("Data Source=SQL1;Initial Catalog=SignInspection;Integrated Security=SSPI")
但是,如果我将
SQL1
更改为
SQLTEST
连接超时,除了超时错误之外,我不会得到任何错误

我可以在SQLTest上运行profiler,并且可以看到它甚至没有尝试连接。什么也没发生,一声偷看也没有

有什么想法吗?谢谢

编辑:

好吧,这是一个没有实际意义的问题,因为我在SQL1服务器上的身份验证工作正常

我将在这里发布配置,这样也许其他人可以从中受益

首先,web服务器正在运行IIS和.NET。用户使用Active Directory登录到intranet,.NET页面需要检索他们的登录凭据(最显著的用户名)。数据库是SQL Server 2005,运行在不同的计算机上。但是.NET应用程序需要作为另一个用户连接到数据库

要成功完成这两项操作,请转到Windows>运行,输入inetmgr并点击运行。导航到站点,右键单击>属性,然后单击标题为目录安全性的选项卡,单击编辑..,确保仅启用了集成Windows身份验证和摘要身份验证。输入正确的广告领域,然后单击“确定”。应用设置/点击OK

在web.config中,您需要以下行

<authentication mode="Windows" />
<identity impersonate="true" username="myDomain\MyUserName" password="123mypasswordgoeshere">

这些步骤对我来说很有效,希望对其他人有用。

当您与enterprise manager连接时,这些步骤是从运行VB.Net代码的同一台机器上执行的吗

否则,它可能是相当多的事情,从mdma提到的防火墙或DNS到使用错误的网络协议设置,或者可能不接受远程连接


这篇文章包含了一个要查看的内容列表(它是针对SQL 2000的,但至少可以让您开始学习)。

一个显而易见的问题是,SQLTEST是否有一个名为“SignInspection”的数据库?您是否使用Windows身份验证或SQL身份验证通过SQL Management Studio登录到SQLTEST?我希望如果这两个问题中的任何一个都是问题,您会得到一个异常,但它值得检查。

听起来可能是防火墙或DNS问题。您是否可以检查“ping SQLTEST”是否有效,或者尝试暂时禁用您的本地防火墙。从“我的”框和“生产”框ping任一台计算机都成功。是的,这两台计算机都具有该数据库和Windows身份验证。当我通过管理器连接(到其中一个)时,我可以运行查询等。我想从技术上讲,这并不能真正解决我的问题,但这是迄今为止最有用的答案,包含了一个有用的链接,因为我的问题不再相关,我将接受这个答案。@Wayne:谢谢,但是,如果你自己解决了问题,你可以随时发布自己问题的答案,并将其标记为答案(虽然我认为你不会因此获得任何代表,但至少问题会得到正确的回答)。我考虑过这一点,但我的成功与我最初的问题(连接到特定服务器)无关。。。我想既然你的问题与原来的问题有关,那就更好了。
Server=SQL1;Database=SignInspection;Trusted_connection=True;