C#百万数据查询出现超时问题的解决方法

 更新时间:2014年09月05日 15:28:51   投稿:shichen2014  
这篇文章主要介绍了C#百万数据查询出现超时问题的解决方法,是非常实用的技巧,需要的朋友可以参考下

本文较为详细的讲解了C#百万数据查询出现超时问题的解决方法,分享给大家供大家参考之用。具体方法如下:

很多时候我们用C#从百万数据中筛选一些信息时,经常会出现程序连接超时的错误,常见的错误有很多,例如:
Timeout expired. The timeout period elapsed prior to completion of the operation or the server等等

本文就常见的几种解决方案进行说明,感兴趣的可以对此加以改进与完善。

①.当然第一步要查看是否Connection没关闭问题,一般新手都会犯这个错误,需要认真查看一下哦,这个就不详细说了。

②.如果将sql语句复制到查询分析器中执行,如果执行时间本来就超过30秒,那么一般采用如下的解决方案:

首先分析引起Timeout的原因,一般是Connection没关闭或者SqlConnection.ConnectionTimeout超时,另外一种就是SqlCommand.CommandTimeout引起的, SqlCommand的此方法为获取或设置在终止执行命令的尝试并生成错误之前的等待时间,

他的默认为 30 秒,你可以设置为0 ,它表示无限制,但是最好不要去设置0 ,否则会无限的等待下去的,只需要针对查询分析器的时间,去设置这个时间就可以了

③.执行时间不是很长,但是还是操作超时,那么 也有很多原因,一般经常出现的有两种,asp.Net应用程序的请求超时,或者是连接池的连接生存期过去,,因为连接池默认值是60秒,那么针对这两种解决方案为:

解决应用程序请求超时:

在web.config中加上以下语句:

<system.web> 
<httpRuntime maxRequestLength="102400" executionTimeout="720" />
</system.web> 

executionTimeout:是允许执行请求的最大时间限制,单位为秒
maxRequestLength:指示 ASP.Net 支持的最大文件上载大小。该限制可以防止。大家都懂的。

解决程序池生存周期问题:

在数据库连接字符串中修改:

database=AA;
uid=sa;
pwd=sa; 
Pooling=true;
MAX Pool Size=1024;
Min Pool Size=1;
Connection Lifetime=60

至于含义基本上从英文的意思上大家就明白了,呵呵。当然Min Pool Size=1这个设置还有很多讲究。

希望本文所述对大家的C#程序设计有所帮助。

相关文章

  • C#语句先后顺序对程序的结果有影响吗

    C#语句先后顺序对程序的结果有影响吗

    有朋友问我,C#中C#语句先后顺序影响程序的结果吗?告诉大家,答案是肯定的,绝对影响程序的结果,所以在程序中一定要注意C#语句的顺序
    2015-10-10
  • 详细了解C# 枚举与位枚举

    详细了解C# 枚举与位枚举

    这篇文章主要介绍了C# 枚举与位枚举的相关资料,文中讲解非常细致,帮助大家更好的理解和学习枚举和位枚举,感兴趣的朋友可以了解下
    2020-07-07
  • c#实现输出的字符靠右对齐的示例

    c#实现输出的字符靠右对齐的示例

    下面小编就为大家分享一篇c#实现输出的字符靠右对齐的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • C# Xamarin利用ZXing.Net.Mobile进行扫码的方法

    C# Xamarin利用ZXing.Net.Mobile进行扫码的方法

    这篇文章主要介绍了C# Xamarin利用ZXing.Net.Mobile进行扫码的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • C#集合遍历时删除和增加元素的方法

    C#集合遍历时删除和增加元素的方法

    这篇文章主要介绍了C#集合遍历时删除和增加元素的方法,结合实例形式分析了C#针对集合元素的遍历、添加与删除等操作实现方法与注意事项,需要的朋友可以参考下
    2016-06-06
  • C#几种排序算法

    C#几种排序算法

    C#几种排序算法...
    2007-03-03
  • 基于C#的socket编程的TCP异步的实现代码

    基于C#的socket编程的TCP异步的实现代码

    本篇文章主要介绍了基于C#的socket编程的TCP异步的实现代码,详解的讲诉了TCP通信异步的实现,有兴趣的可以了解一下。
    2016-11-11
  • C#中datagridview的EditingControlShowing事件用法实例

    C#中datagridview的EditingControlShowing事件用法实例

    这篇文章主要介绍了C#中datagridview的EditingControlShowing事件用法,实例分析了datagridview的EditingControlShowing事件的定义与使用技巧,需要的朋友可以参考下
    2015-06-06
  • C#排序算法之堆排序

    C#排序算法之堆排序

    这篇文章主要为大家详细介绍了C#排序算法之堆排序,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01
  • c# 常见文件路径Api的使用示例

    c# 常见文件路径Api的使用示例

    c#编程中经常有遇到要处理文件路径的需求,本文分别讲述了如何从程序下面的文件和临时目录下的文件去使用路径api,感兴趣的朋友可以了解下
    2021-05-05

最新评论