C# 用vs2010写的代码,连接的是SQL server2008的数据库,定时执行SQL语句有时不会错,有时又会错。

在建立与服务器的连接时出错。在连接到SQLServer2005时,在默认的设置下SQLServer不允许进行远程连接可能会导致此失败。(provider:命名管道提供程序... 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。
(provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
展开
 我来答
a5202003
2013-05-27 · TA获得超过2249个赞
知道大有可为答主
回答量:1885
采纳率:75%
帮助的人:591万
展开全部
首先说这个错误信息,其实说白了就是建立数据库连接失败。那么失败的原因可能有很多,比如服务是否启动,网络是否畅通,连接数是否超出设置的最大连接数等等。

其次,有时成功有时失败也可能会跟代码有关,比如你的数据库连接串是动态加载,或者使用了事物串行等等,都可能出现。

所以仅仅是提供这点信息的话,没法判断具体原因。除非有人刚好和你一样遇到过。
建议楼主:将关键的地方加入输出日志,尽量详细一些,记录到文件里,一旦等到出错的时候,就可以按照日志输出的内容对比代码查找原因了。
更多追问追答
追问
这个错误已经是细化到哪一句出错了,就是数据库的查询语句,我也在怀疑是不是超出了最大连接数,多处用到循环,出错的地方就在循环里面。但是又必须用循环,不知道怎么改。
追答

呵呵,这个跟循环无关的,。

数据库连接都会有一个open和close

注意:

  1. 有open就一定要有close

  2. open不能放入循环

墙头红杏俏枝头
2013-05-27 · 超过45用户采纳过TA的回答
知道小有建树答主
回答量:178
采纳率:0%
帮助的人:128万
展开全部
不会出错说明你链接的代码没有问题。有时候出错,看是什么情况下出错。出错后又是怎么恢复的。
追问
这个错是不定时出现的,不知道是什么情况导致的,好像错误的原因也不是扑捉到的这种,程序开始运行一段时间是不会出错的,要过几个小时后,才会报错。
追答
可能是你数据库连接用完后没有释放,最后连接达到上限
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
卟哩卟弃只为你
2013-05-27
知道答主
回答量:10
采纳率:0%
帮助的人:3.8万
展开全部
开启vs2010软件编程的编辑代码的时候,必须要把数据库SQL server2008打开,然后到配置工具中找SQL server配置管理器进行设置,找到SQL server (SQLEXPRESS)看它的状态是否是正在运行,有时候这里是已停止状态,你以后注意看,一般情况下这里可以解决,你可以重新启动液可以解决这个问题的。
追问
已经打开的,而且运行了好几个小时后才会报错。连接的是2008,抛出的错是2005的,很奇怪。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式