日期:2014-05-17  浏览次数:20411 次

关于ASP.NET连接MY SQL,ExecuteReader不返回数据
自己架设的 mySql数据库, 设置都是默认的。 使用 SQLyog 连接 以及查询 数据 都没有问题,之前一直使用的代码也没问题,
今天不知道怎么了。连接上数据库,但是MySQL提供的 MySqlCommand.ExecuteReader() 方法却突然不返回任何数据了。使用Sqlyog 查看 连接字符串没问题,SQL语句也没有问题。
实在找不出问题在哪里,具体大家看一下代码吧。 可能我表述的也不清楚。如果有问题大家请留言问我。


1.首先是我的代码快:


2.然后是 SQL语句。也就是commandString


3.connection open 以后的状态


4.dataReader 的状态


5.SQLyog 查询的 commandString


代码一直都没有改变过。一直使用都没问题。就今天突然不行了。大家看看吧。连接字符串肯定没问题,SQL语句也肯定没问题。

------解决方案--------------------
不会是你服务器的IP地址变掉了吧,你测试能连接上数据库么?
------解决方案--------------------
去掉catch,或在catch里重新把该异常抛出,看看什么错。

还有一种可能就是你的SQL语句不对,可能是条件不成立。
------解决方案--------------------
user.BusinessId=dr.GetInt32(0);改成这种试试不要列名
------解决方案--------------------
1,你可以去掉查询语句中的where测试,看看是不是中文编码导致
2,如果去掉Where仍旧不返回,你再细细看连接的库真的是对的吗?尤其是端口和服务所对应的数据库
------解决方案--------------------
会不会是MySqlDataReader 没有关闭的缘故,导致后面的无法访问了。
using (MySqlDataReader sdr = _cmd.ExecuteReader())
{

}