c# - 在数据集中寻找字段 C#

标签 c# mysql datatable

我正在查询 mySQL 数据库并将响应存储在数据表中。我需要检查特定列以验证其是否为空或为空。下面是我正在做的事情

DataTable dataTab = new DataTable("ServiceOrderProtocol");

string strQuery = "select OrderID, ServiceOrder, ExternalID, Project_key, ProjectType from ServiceOrder;";

using (MySqlCommand cmd = new MySqlCommand(strQuery, conn))
{
using (MySqlDataAdapter sqlDa = new MySqlDataAdapter(cmd))
 {
 sqlDa.Fill(dataTab);
 return dataTab;
 }}

现在我不确定如何检查从存储在 dataTab 中的查询返回的字段 ExternalID 是否为 null 或为空。

最佳答案

如果您想知道表中的任何行是否在字段ExternalID 中包含空值:

bool anyNullExternalID = dataTab.AsEnumerable().Any(r => r.IsNull("ExternalID"));

如果你想知道是否全部为空:

bool allNullExternalID = dataTab.AsEnumerable().All(r => r.IsNull("ExternalID"));

如果你想要所有行都为空:

IEnumerable<DataRow> allNullExternalIDRows = dataTab.AsEnumerable()
    .Where(r => r.IsNull("ExternalID"));

如果它不是 int (顾名思义)但是一个 string你想包括 null和一个空字符串,附加 || string.IsNullOrEmpty(r.Field<string>("ExternalID"))

关于c# - 在数据集中寻找字段 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43760993/

相关文章:

c# 如何在使用 list.Remove 时遍历列表中的每个项目

mysql - 关于建立数据库表的建议

mysql - 根据日期字段使用序列号更新记录

javascript - 在 ASP.NET MVC 中将 HTML 表单数据从 View 传递到 Controller

c# - 什么是 API 用法?

php - #1064 - 你的 SQL 语法有错误;创建表时

c# - 使用 ItemArray 检查并替换 DataTable 每个单元格中的值

c# - 将过滤后的数据从数据集获取到数据表

c# - 从 C# 中的存储过程返回多个记录集

c# - 版本 12+ 中是否有 Azure.Storage.Queue 的 ContinuationToken