c# 如何判断记录的某个字段值为空?

我用c# 读取sql 2000 的一个表格table1的一个记录,记录的某个字段score 可能为空值,那么 假设我读出的值是:ds.Tables[0].Rows[0]["score "],
请问怎样判断ds.Tables[0].Rows[0]["score "]是否为空值??
我记得不是用null判断的,好像也不是isEmpty判断

第1个回答  2009-11-19
if (ds.Tables[0].Rows[0]["score "]=DBNull.Value)
{
//为空
}
else
{
//有值
}
第2个回答  2009-11-19
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace WindowsApplication16
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private DataSet ds = new DataSet();
private SqlDataAdapter da;
private void Form1_Load(object sender, EventArgs e)
{
//连接字符串, 你自己修改一下登录名和数据库名.我的数据库名是kk
string connStr = @"Data Source=FLOWER\YNG;Initial Catalog=kk;Integrated Security=True";
SqlConnection con = new SqlConnection(connStr);
string sql = "select score from score";//表名和列名都是score,你按自己的来
da = new SqlDataAdapter(sql, DBHelper.con);
da.Fill(ds, "score");
if (ds.Tables[0].Rows[0]["score"] is DBNull) //就是这句了
{
MessageBox.Show("is null");
}
else
{
MessageBox.Show(ds.Tables[0].Rows[0]["score"].ToString());
}
}
}
}//C# 2005 测试用例
第3个回答  2009-11-19
if(ds.Tables[0].Rows[0]["score "].toString()=="")
第4个回答  2009-11-19
if(!ds.Tables[0].Rows[0]["score "].Equals(DBNull.Value))本回答被提问者采纳

C#中如何判断数据库中int字段为Null
用Convert.IsDBNull就行了,示例:while (dr.Read()){ dr.GetValues(fieldValues);for (int fieldCounter = 0; fieldCounter < fieldCount; fieldCounter++){ if (Convert.IsDBNull(fieldValues[fieldCounter]))fieldValues[fieldCounter] = "NA";} grid.Rows.Add(fieldValues);} ...

C#.net 网页 中 如何处理 查询 出来字段为空的 数据???报错!!
当yReader[0]为null时将返回string.Empty,此方法永远不返回NULL str_max=myReader[0] as string;当转换失败时不会出异常而是返回null

c# 的lamda表达式怎么判断是否为空
q = q.Where(p => p.HomePic!=Guid.Null);

在C#中怎么判断一个对象是否为空
C#判断可空(null):如果是引用类型,可以使用 == 运算符,或者 .equals()函数。如果是值类型,建议只使用 == 运算符。(==只是比较两个对象是否是同一块内存,而Equuals()函数性能会差,因为要对值的所有字段做比较,全部相同才返回true)而且要注意一些基类型是不可空的。比如int ,具有默认值...

c#编程里如何编写判断数据库某字段值是1或0的问题
某字段数据类型为int,就能直接判断其值是否为 0 或 1,这有何难处,不过,你要控制 控件是否可用,数据表应该安排另一个字段存放该控件的名称或ID,初始化的时候读取其名称,让他去find窗口上和他同名的控件,再通过判断另一个字段的值为0或1,其实这就是权限管理的方法。

C#中如何判断一个DateTime类型字段的日期为空?
C#中如何判断一个DateTime类型字段的日期为空,有两种方式:1、DataTalbe.rows[0]["dtCol"]==DBNull.Value 2、DataTalbe.rows[0]["dtCol"].ToString()=="",这种判断方式常规说也可以,只是不过多一个转换操作,效率比上述1低,建议一般用上述1的方式。C#是一种安全的、稳定的、简单的、优雅...

C# 中 怎样判断ComBox绑定的数据是否为空?
combobox他绑定时显示的的确是类别名称。但还可以绑定不显示的编号。这样你就可以用到编号了。combobox.valuemember="id" 这样就绑定了不显示在控件上的编号。然后调用编号。就可以写一行代码。combobox名称.selectvalue就是你想要的编号了。记得要类型转换。convert.ToInt32(combobox名称.selectvalue)...

问一个有趣的问题:C#中关于SQL字段null值的判断
1.确定返回的DataTable的字段是字符串类型的!string.IsNullOrEmpty(dataset.table[i].Rows[i].is_nullvalue)(其中i可以替换成确定的值)2.返回的是弱类型的DataTable ,table.Rows[i].IsNull("需要判断的字段");(其中i表示是是这张表的第i的这个字段)2.返回的是强类型的DataTable,ds.t_...

C# 数据库中想判断是否读取到数据怎么办?
读一条,就指到下一条。结果集第一条数据的前边一条是BOF,B就是Begin的首字母,最后一条的后边是EOF。结果集查回来,指针通常指向BOF,如果你写arr["字段名"]就会出错,应该先读一次,并且读的时候要判断是否读取成功,如果结果集为空,读的时候就会从BOF直接指向EOF,这样读取会失败。

c# 中,数据库取到的值,在枚举里为空怎么处理
两种处理方式。1、在写sql的时候 select isnull([字段名],'') from ...这样就会把null的变成“”2、在给枚举赋值的时候,判断一下是不是为空,若为空填充默认值

相似回答