SQL Timeout 的问题之解决方法
2008-03-01 13:32
337 查看
一般来说返回DataSet的函数都是这么写
public DataSet getrs(string sql)
{
System.Data.SqlClient.SqlConnection = new SqlConnection();
System.Data.SqlClient.SqlDataAdapter comm=new SqlDataAdapter(sql,conn);
System.Data.DataSet ds=new DataSet();
comm.Fill(ds);
return ds;
}
其中 new SqlConnection()里面放连接数据库的字符串,
参数sql是查询语句,例如sql="select * from s_user"等等
但是如果这个查询时间比较长(因为表的里数据比较大,而且查询语句里还调用了函数),系统将会返回超时错误,不知道在哪里控制
在new SqlConnection()里面放连接数据库的字符串里面放Connect Timeout=300;是不对的,因为这是运算的时间,不是连接数据库的时间。
所以应该这么写返回DataSet的语句:
public static DataTable ExecuteQuery(string sql,int cmdTimeout)
{
SqlCommand cmd;
SqlConnection conn;
conn = new SqlConnection();
cmd = new SqlCommand(sql, conn);
conn.Open();
cmd.CommandTimeout = cmdTimeout;
SqlDataAdapter Ada = new SqlDataAdapter();
Ada.SelectCommand = cmd;
DataSet ds = new DataSet();
Ada.Fill(ds);
conn.Close();
conn.Dispose();
cmd.Dispose();
return ds.Tables[0];
}
http://www.cnblogs.com/Luoke365/archive/2007/05/29/763898.html
public DataSet getrs(string sql)
{
System.Data.SqlClient.SqlConnection = new SqlConnection();
System.Data.SqlClient.SqlDataAdapter comm=new SqlDataAdapter(sql,conn);
System.Data.DataSet ds=new DataSet();
comm.Fill(ds);
return ds;
}
其中 new SqlConnection()里面放连接数据库的字符串,
参数sql是查询语句,例如sql="select * from s_user"等等
但是如果这个查询时间比较长(因为表的里数据比较大,而且查询语句里还调用了函数),系统将会返回超时错误,不知道在哪里控制
在new SqlConnection()里面放连接数据库的字符串里面放Connect Timeout=300;是不对的,因为这是运算的时间,不是连接数据库的时间。
所以应该这么写返回DataSet的语句:
public static DataTable ExecuteQuery(string sql,int cmdTimeout)
{
SqlCommand cmd;
SqlConnection conn;
conn = new SqlConnection();
cmd = new SqlCommand(sql, conn);
conn.Open();
cmd.CommandTimeout = cmdTimeout;
SqlDataAdapter Ada = new SqlDataAdapter();
Ada.SelectCommand = cmd;
DataSet ds = new DataSet();
Ada.Fill(ds);
conn.Close();
conn.Dispose();
cmd.Dispose();
return ds.Tables[0];
}
http://www.cnblogs.com/Luoke365/archive/2007/05/29/763898.html
相关文章推荐
- SQL Timeout 的问题之解决方法
- Oracle执行计划 SQL语句执行效率问题查找与解决方法
- C#中??和?分别是什么意思? 在ASP.NET开发中一些单词的标准缩写 C#SESSION丢失问题的解决办法 在C#中INTERFACE与ABSTRACT CLASS的区别 SQL命令语句小技巧 JQUERY判断CHECKBOX是否选中三种方法 JS中!=、==、!==、===的用法和区别 在对象比较中,对象相等和对象一致分别指的是什么?
- 【原】新装SQL Server 2014 遇到问题的解决方法。
- SQL分组求每组最大值问题的解决方法收集 (转载)
- Linq to SQL Delete时遇到问题的解决方法
- SQL Server Agent无法启动问题解决方法
- Linq to SQL Delete时遇到问题的解决方法
- 对于重装SQL 2000出现的某些挂起文件问题解决方法
- SQL常见问题解决方法收集
- sql自动增长标识导致导入数据问题的解决方法
- 扩展方法解决LinqToSql Contains超过2100行报错问题
- MySQL主从复制出现Slave_IO_Running,Slave_SQL_Running问题的解决方法
- pip 经常跟新timeout问题解决方法
- SQL附加数据库失败问题的解决方法
- asp读sql数据时出现乱码问题的解决方法
- Oracle的SQL语句执行效率问题查找与解决方法
- 用PL/SQL连接oracle遇到的问题及解决方法:ORA-12154:TNS:could not resolve the connect identifier specified。。
- 关于SQL的几个问题的解决方法
- ACCESS模糊查询like的解决方法&&SQL查询语句通配符问题