Tsql 如何检查与数据库的连接?
t-sql,sql server 2008 我的应用程序必须每5秒检查一次与数据库的连接状态。我是按照下面的代码做的:Tsql 如何检查与数据库的连接?,tsql,sql-server-2008,Tsql,Sql Server 2008,t-sql,sql server 2008 我的应用程序必须每5秒检查一次与数据库的连接状态。我是按照下面的代码做的: static bool Check() { using (SqlConnection conn = new SqlConnection("Server=WS-01\\ex1; User id=Admin; pwd=123; database=database")) { try {
static bool Check()
{
using (SqlConnection conn = new SqlConnection("Server=WS-01\\ex1; User id=Admin; pwd=123; database=database"))
{
try
{
conn.Open();
if (conn.State != ConnectionState.Open)
return false;
else
return true;
}
catch
{
return false;
}
finally
{
try
{
conn.Close();
}
catch
{
}
}
}
}
static void Main(string[] args)
{
Console.WriteLine(Check());
Console.ReadKey();
}
}
有没有更简单的方法?我不熟悉一些特定的t-sql指令…您可以删除finally-当您使用()包装连接对象时,无需手动关闭连接
此外,连接超时时间可能会超过5秒,因此您可能会出现一个失败队列。您可以删除最后一个-当您使用()包装连接对象时,无需手动关闭连接
此外,连接超时时间可能会超过5秒,因此您可能会出现一个失败队列。其中没有T-SQL指令,因此您可以:-)如果在连接中给数据源错误,我也会使用相同的代码检查连接,因为它不会出现在catch块中或conn.open()之后的下一行代码中语句数据源=testSvr03\SQLEXPRESS;初始目录=测试;连接超时=600;持久安全信息=True;用户ID=测试;password=test这里面没有T-SQL指令,所以您可以:-)我也在使用相同的代码来检查连接,如果我在连接中给datasource错误的话,那么它永远不会出现在catch块中或conn之后的下一行代码中。open()语句Data Source=testSvr03\SQLEXPRESS;初始目录=测试;连接超时=600;持久安全信息=True;用户ID=测试;密码=测试