
C#.net 网页 中 如何处理 查询 出来字段为空的 数据???报错!!
数据库的SQL语句这样写:"selectmax(MAccount)fromusers";stringstr_max;if(myReader.Read()){str_max...
数据库的 SQL 语句 这样 写: "select max(MAccount ) from users ";
string str_max;
if ( myReader.Read())
{
str_max = (string)myReader[0];
}
else
{
str_max = "";
Response.Write(str_max);
}
问题就出在这里, 为什么 当数据库的字段MAccount 有记录值 可以这样转换 ,如果 MAccount 没有记录时 ,会报错 object 不能转换 为string类型,
如果SQL 语句这样写 又可以使用 "select MAccount from users ";
string str_max;
if ( myReader.Read())
{
str_max = (string)myReader[0];
}
else
{
str_max = "";
Response.Write(str_max);
}
还有 在 VB.NET里面可以使用 Not ISDbnull 来判断 数据为空, 而在C# 改如何判断???急 请高手指点 展开
string str_max;
if ( myReader.Read())
{
str_max = (string)myReader[0];
}
else
{
str_max = "";
Response.Write(str_max);
}
问题就出在这里, 为什么 当数据库的字段MAccount 有记录值 可以这样转换 ,如果 MAccount 没有记录时 ,会报错 object 不能转换 为string类型,
如果SQL 语句这样写 又可以使用 "select MAccount from users ";
string str_max;
if ( myReader.Read())
{
str_max = (string)myReader[0];
}
else
{
str_max = "";
Response.Write(str_max);
}
还有 在 VB.NET里面可以使用 Not ISDbnull 来判断 数据为空, 而在C# 改如何判断???急 请高手指点 展开
5个回答
展开全部
你可以使用一些不会报错的方式将object转换为字符串
如
str_max=string.Format("{0}",myReader[0]);
当yReader[0]为null时将返回string.Empty,此方法永远不返回NULL
str_max=myReader[0] as string;
当转换失败时不会出异常而是返回null
如
str_max=string.Format("{0}",myReader[0]);
当yReader[0]为null时将返回string.Empty,此方法永远不返回NULL
str_max=myReader[0] as string;
当转换失败时不会出异常而是返回null
展开全部
C#中判断查询出的结果是否为空,可以使用DBNull.Value来判断.
简例:
if (dt.Rows[0]["Id"] != DBNull.Value)
{
fd.Id = Convert.ToInt32(dt.Rows[0]["Id"].ToString());
}
简例:
if (dt.Rows[0]["Id"] != DBNull.Value)
{
fd.Id = Convert.ToInt32(dt.Rows[0]["Id"].ToString());
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DBnull.Value,
至于补充的应该是隐式和显式数据转换的问题
至于补充的应该是隐式和显式数据转换的问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DBNull.Value.Equal(myReader[0])
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数据库中的空值使用“DBnull.Value”判断
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询