gpt4 book ai didi

c# - DBNull if 语句

转载 作者:IT王子 更新时间:2023-10-29 03:49:20 30 4
gpt4 key购买 nike

我正在尝试执行一个存储过程,然后使用 if 语句检查空值,但我做空了。我是 VB 专家,所以如果我犯了小学生语法错误,请多多包涵。

objConn = new SqlConnection(strConnection);
objConn.Open();
objCmd = new SqlCommand(strSQL, objConn);
rsData = objCmd.ExecuteReader();
rsData.Read();

if (!(rsData["usr.ursrdaystime"].Equals(System.DBNull.Value)))
{
strLevel = rsData["usr.ursrdaystime"].ToString();

}

这是否允许我检查 SQL 连接是否仅返回一个值,如果是则填充我的字符串?

我习惯于只检查下面的内容以查看是否返回了一个值,但不确定我是否使用 C# 正确执行了此操作

如果不是 IsDBNull(rsData("usr.ursrdaystime"))

如有任何帮助,我们将不胜感激!

最佳答案

这应该有效。

if (rsData["usr.ursrdaystime"] != System.DBNull.Value))
{
strLevel = rsData["usr.ursrdaystime"].ToString();
}

还需要加上using语句,如下:

using (var objConn = new SqlConnection(strConnection))
{
objConn.Open();
using (var objCmd = new SqlCommand(strSQL, objConn))
{
using (var rsData = objCmd.ExecuteReader())
{
while (rsData.Read())
{
if (rsData["usr.ursrdaystime"] != System.DBNull.Value)
{
strLevel = rsData["usr.ursrdaystime"].ToString();
}
}
}
}
}

这会自动处理(关闭) block { .. } 之外的资源。

关于c# - DBNull if 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10431835/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com