Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在mysql数据库的列中搜索空单元格并显示在datagridview上_C#_Mysql_Datagridview - Fatal编程技术网

C# 在mysql数据库的列中搜索空单元格并显示在datagridview上

C# 在mysql数据库的列中搜索空单元格并显示在datagridview上,c#,mysql,datagridview,C#,Mysql,Datagridview,我的应用程序需要在任务管理软件中搜索未完成的项目。为此,我尝试实现一种方法,可以读取MySQL数据库中未完成的项目,并将它们显示在屏幕上。如果特定单元格为“空值”,则项目将不完整。当单元格显示“已完成”时,项目已完成。我试图搜索一行中的所有空值,并用visual basic C#将它们显示在DataGridView上。 我尝试的代码如下所示,但不幸的是它不起作用: private void button4_Click(object sender, EventArgs e) { DataV

我的应用程序需要在任务管理软件中搜索未完成的项目。为此,我尝试实现一种方法,可以读取MySQL数据库中未完成的项目,并将它们显示在屏幕上。如果特定单元格为“空值”,则项目将不完整。当单元格显示“已完成”时,项目已完成。我试图搜索一行中的所有空值,并用visual basic C#将它们显示在
DataGridView
上。 我尝试的代码如下所示,但不幸的是它不起作用:

private void button4_Click(object sender, EventArgs e)
{
    DataView DV = new DataView(dt);
    DV.RowFilter = string.Format("BackSheetAssembled LIKE '%{0}%'", DBNull.Value );
    dataGridView1.DataSource = DV;
}
我尝试了用文本框替换
DBNull.Value
的相同方法,它可以很好地在数据库中搜索这些文本,但对
Null
值无效。

试试这个

DV.RowFilter = "Isnull(BackSheetAssembled,'') = ''";
DV.RowFilter=“BackSheetAssembled为空”

例如:

var table = new DataTable();
table.Columns.Add(new DataColumn("Id"));
table.Columns.Add(new DataColumn("Name"));
table.Rows.Add(new object[] { 123, "Name1" });
table.Rows.Add(new object[] { 234, "Name2"});
table.Rows.Add(new object[] { null, "Name3" });

var view = new DataView(table);
view.RowFilter = "Id is null";

for (int i = 0; i < view.Count; i++)
   Console.WriteLine(view[i][1].ToString());

Console.ReadLine();
var table=newdatatable();
table.Columns.Add(新数据列(“Id”));
table.Columns.Add(新数据列(“名称”));
Add(新对象[]{123,“Name1”});
Add(新对象[]{234,“Name2”});
Add(新对象[]{null,“Name3”});
var视图=新数据视图(表);
view.RowFilter=“Id为空”;
for(int i=0;i

输出:Name3

您可以删除string.Format.works。如果我可以问一下,在那个语句中发生了什么?Ammar-您希望“ISNULL”这样,我们使用ISNULL函数进行过滤。如果单元格值为null,则Isnull函数返回空字符串,然后与空字符串进行比较,得到结果参见。。谢谢。请使用链接解释此代码的工作原理,不要只给出代码,因为解释更有可能帮助未来的读者。另见。