SqlCommand.CommandTimeout
和 SqlConnection.ConnectionTimeout
是 .NET 中用于数据库操作的两个不同属性,它们分别控制不同的超时行为。
SqlCommand.CommandTimeout
- 作用:
CommandTimeout
属性用于设置 SQL 命令执行的超时时间(以秒为单位)。如果命令执行时间超过这个时间,将会抛出一个SqlException
。 - 适用场景:当你有一个长时间运行的查询或存储过程时,可以通过设置
CommandTimeout
来避免程序无限期等待。 - 默认值:默认值为 30 秒。
示例
csharp
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
using (SqlCommand command = new SqlCommand("LongRunningQuery", connection))
{
command.CommandTy