如果连接到 c# 中的 sql 查询出错,我该如何使用 try catch?
如果我使用下面的简单代码,它确实可以工作,但是发生错误所需的时间太长。如何让 try catch 更快地处理错误?
try
{
//sql command
}
catch
{
//display connection error
}
在异常发生之前,您无法捕获异常。如果你想早点抓住它,就让它早点发生。具体来说,缩短超时时间。
我知道如何减少 ColdFusion 中的超时时间。我必须查看此页面以了解如何在 .net 中执行此操作。
try-catch
会在异常发生时立即捕获,但不要期望在超时发生之前捕获超时异常。对于SqlCommand
,默认超时为30 秒,但您可以通过设置CommandTimeout
属性来更改它:
try
{
var command = new SqlCommand("...");
command.CommandTimeout = 5; // 5 seconds
command.ExecuteNonQuery();
}
catch(SqlException ex)
{
// handle the exception...
}
通过以下方式进行:
try
{
con.open();
.
.//Database operation
.
con.close();
}
catch(Exception ex)
{
MessageBox.Show("Error: "+ex.Message);//If exception will come, it will handle it here.
}
finally
{
con.close();
}
catch (SqlException ex)
{
if (ex.Number == -2)
{
//handle timeout
}
}