C# 用vs2010写的代码,连接的是SQL server2008的数据库,定时执行SQL语句有时不会错,有时又会错。
在建立与服务器的连接时出错。在连接到SQLServer2005时,在默认的设置下SQLServer不允许进行远程连接可能会导致此失败。(provider:命名管道提供程序...
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。
(provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) 展开
(provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) 展开
3个回答
展开全部
首先说这个错误信息,其实说白了就是建立数据库连接失败。那么失败的原因可能有很多,比如服务是否启动,网络是否畅通,连接数是否超出设置的最大连接数等等。
其次,有时成功有时失败也可能会跟代码有关,比如你的数据库连接串是动态加载,或者使用了事物串行等等,都可能出现。
所以仅仅是提供这点信息的话,没法判断具体原因。除非有人刚好和你一样遇到过。
建议楼主:将关键的地方加入输出日志,尽量详细一些,记录到文件里,一旦等到出错的时候,就可以按照日志输出的内容对比代码查找原因了。
其次,有时成功有时失败也可能会跟代码有关,比如你的数据库连接串是动态加载,或者使用了事物串行等等,都可能出现。
所以仅仅是提供这点信息的话,没法判断具体原因。除非有人刚好和你一样遇到过。
建议楼主:将关键的地方加入输出日志,尽量详细一些,记录到文件里,一旦等到出错的时候,就可以按照日志输出的内容对比代码查找原因了。
更多追问追答
追问
这个错误已经是细化到哪一句出错了,就是数据库的查询语句,我也在怀疑是不是超出了最大连接数,多处用到循环,出错的地方就在循环里面。但是又必须用循环,不知道怎么改。
追答
呵呵,这个跟循环无关的,。
数据库连接都会有一个open和close
注意:
有open就一定要有close
open不能放入循环
展开全部
不会出错说明你链接的代码没有问题。有时候出错,看是什么情况下出错。出错后又是怎么恢复的。
追问
这个错是不定时出现的,不知道是什么情况导致的,好像错误的原因也不是扑捉到的这种,程序开始运行一段时间是不会出错的,要过几个小时后,才会报错。
追答
可能是你数据库连接用完后没有释放,最后连接达到上限
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
开启vs2010软件编程的编辑代码的时候,必须要把数据库SQL server2008打开,然后到配置工具中找SQL server配置管理器进行设置,找到SQL server (SQLEXPRESS)看它的状态是否是正在运行,有时候这里是已停止状态,你以后注意看,一般情况下这里可以解决,你可以重新启动液可以解决这个问题的。
追问
已经打开的,而且运行了好几个小时后才会报错。连接的是2008,抛出的错是2005的,很奇怪。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询