繁体   English   中英

如何处理SQL Server NULL值

[英]How to handle SQL Server NULL values

我正在尝试从数据库中获取值,当所有列都具有值时它可以工作。 当值为NULL ,它将返回错误。

我设法找到一种处理字符串的方法,但是如果有一个整数,我不知道如何处理它。 我试图找到一种解决方案,但到目前为止,没有一个对我有用! 这是代码,任何帮助将不胜感激。

谢谢!

while (dr.Read())
{
    coments comentsar = new coments
            {
                Id = (int)dr["Id"],
                Name = (string)dr["Name"],
                Likes = (int)dr["Likes"],
          //    Signature = dr["Signature"].ToString(),
                Datetime = (DateTime)dr["Datetime"]
            };

    comen.Add(comentsar);

    return comen;
}

您可以检查空值,如果值不为空,则使用三元运算符分配变量:

Signature  = dr["Signature"] != DBNull.Value ? (string)dr["Signature"] : "No value",
Likes = dr["Likes"] != DBNull.Value ? Convert.ToInt32(dr["Likes"]) : 0,

您需要将类型更改为Nullable类型。

(int)dr["Likes"]更改为(int?)dr["Likes"]
Datetime = (DateTime)dr["Datetime"]Datetime = (DateTime?)dr["Datetime"]

您还需要更新模型coments以允许可空类型。

Microsoft Nullable类型

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM