sqlServer2000链接超时的问题

代码如下:
public int ExecuteNonQuery(CommandType cmdType, string cmdText, params SqlParameter[] commandParameters)
  {
  using (SqlConnection conn = new SqlConnection(m_ConnectionString))
  {
  //PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
  conn.Open();
  SqlCommand cmd = new SqlCommand(cmdText, conn);
  cmd.CommandTimeout = 10;
  cmd.CommandType = cmdType;
  if (commandParameters != null)
  {
  foreach (SqlParameter parm in commandParameters)
  {
  cmd.Parameters.Add(parm);
  }
  }
  int val = cmd.ExecuteNonQuery();
  cmd.Parameters.Clear();
  return val;
  }
  }

在往本地数据库写数据的时候,总是提示下面的错误:

System.InvalidOperationException: 超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小。
  在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
  在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
  在 System.Data.SqlClient.SqlConnection.Open()

请问各位高手,这是什么原因?谢谢!

作者: tomy843   发布时间: 2011-06-15

把执行命令的超时时间设置长一些

CommandTimeout=30

作者: libinguest   发布时间: 2011-06-15

帮顶,学习学习

作者: taogang1108   发布时间: 2011-06-15

可能是响应时间太小

作者: cjh200102   发布时间: 2011-06-15

设置超时响应时间。
楼主数据库中的记录条数多么?

作者: fengzijinjin   发布时间: 2011-06-15

程序运行时,你可以查看下服务器中的连接数量 ,看你的代码,我估计是你的连接数过多造成的。
执行结束时,记得到connection关闭。

作者: whrspsoft3723   发布时间: 2011-06-15

引用 1 楼 libinguest 的回复:

把执行命令的超时时间设置长一些

CommandTimeout=30


超时设置长点。。。。

作者: porschev   发布时间: 2011-06-15

数据库数据过多吧。应该是数据过多没做处理导致响应超时
加大响应时间
销毁连接!!不是关闭

作者: id270   发布时间: 2011-06-15