概述
相关问题:
C# 如何判断MySqlDataReader 的结果为空
C# 使用MySql查询的得到数据怎么判断为空
解决过程:
①发现会【查找的数据为空】但是MySqlDataReader不为空
MySqlDataReader mySqlData = mySqlCommand2.ExecuteReader();
if (mySqlData == null)
{
Console.WriteLine("不存在");
}
else
{
Console.WriteLine("执行这一步");
}
②在读取的代码段中打断点,发现当【查找的数据为空】时,都不会打印出来(即不会执行.Read)
while (mySqlData.Read())
{
Console.WriteLine(mySqlData.GetString(0) + "账号存在");
if (mySqlData.GetString(0) == "")
{
Console.WriteLine(mySqlData.GetString(0) + "账号不存在");
}
if (mySqlData.GetString(0) == null)
{
Console.WriteLine(mySqlData.GetString(0) + "为空,账号不存在");
}
}
解决方案:如果执行mySqlData.Read()则是有数据的,没有执行则是无数据的
try
{
// 打开连接(如果处于关闭状态才进行打开)
if (CurrentSql.State == ConnectionState.Closed)
{
CurrentSql.Open();
}
// 创建用于实现MySQL语句的对象
// 参数一:SQL语句字符串 参数二:已经打开的数据库连接对象
MySqlCommand mySqlCommand2 = new MySqlCommand(mysqlString, CurrentSql);
// 执行MySQL语句,接收查询到的MySQL结果
MySqlDataReader mySqlData = mySqlCommand2.ExecuteReader();
//数据为空
if (!mySqlData.Read())
{
Console.WriteLine("不读取,则账号不存在");
result = false;
return objectData;
}
// 读取数据
while (mySqlData.Read())
{
//只要是执行Read,就是有数据的 这里来处理数据
}
}
catch (Exception e)
{
Console.WriteLine(e);
result = false;
return objectData;
}
finally
{
// 关闭连接
CurrentSql.Close();
}
最后
以上就是能干飞鸟为你收集整理的MySQL查询的数据为空时的处理的全部内容,希望文章能够帮你解决MySQL查询的数据为空时的处理所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复