VS环境下 Ibatis .Net 连接sqlserver 2005 碰到的问题 Unable to open connection to "Microsoft SQL Server, provide

本文记录了解决Ibatis.Net在VS2010环境下连接SQL Server数据库时出现的异常过程。通过清理并重新生成项目,成功解决了无法连接数据库的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

部署在VS2010环境下调试一个Ibatis .Net 连接sqlserver数据库的项目,在连接数据库时抛出异常:

执行查询出错 'GetAllCellTower' .  出错原因: Error executing query 'GetAllCellTower' for list.  Cause: Unable to open connection to "Microsoft SQL Server, provider V2.0.0.0 in framework .NET V2.0".

Message="在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)"

Google发现大多数人都是说远程连接没配置好(参考http://blog.youkuaiyun.com/wyodyia/archive/2009/11/10/4795101.aspx),经检查发现TCP/IP和named Pipes协议都是打开的。

重启机器都不行。

但是连接字符串是配好的,因为数据库在他的电脑上,所以只修改了Data Source为他的机器数据库实例

<dataSource name="XXX" connectionString="Data Source=XX-PC;Initial Catalog=XXX;Persist Security Info=True;User ID=sa;Password=xxx" />

 

在网上搜了很久,才找到原因,清空SqlMap.xml文件所在的项目,并重新生成解决方案。结果出乎意料 , 问题解决了。

分析原因:他的项目生成是在改数据库连接字符串之前,由于VS的原因,再次运行程序改了之后的文件并没有自动生成到引用到它的项目中去。导致改了等于白改!!!

经验:下次改动了配置文件一定要重新生成项目,最好把文件属性中的复制到输出目录 设置成“始终复制”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值