C# Datatable的几种用法小结

1. C# DataTable的基本概念

DataTable是C#中常用的数据表格对象,它可以用来存储和操作数据。DataTable由多个行和列组成,每行表示一个数据记录,每列表示一个数据字段。

2. 创建和初始化DataTable

2.1 创建空DataTable

可以使用DataTable的构造函数创建一个空的DataTable对象。

DataTable table = new DataTable();

注意:创建DataTable时可以指定表格的名称,例如:

DataTable table = new DataTable("Employee");

2.2 创建带列的DataTable

除了创建空的DataTable,我们还可以通过添加列的方式来创建DataTable。

DataTable table = new DataTable();

table.Columns.Add("ID", typeof(int));

table.Columns.Add("Name", typeof(string));

table.Columns.Add("Age", typeof(int));

以上代码创建了一个包含ID、Name和Age三个列的DataTable。

2.3 创建带数据的DataTable

可以通过添加行的方式来创建带数据的DataTable。

DataTable table = new DataTable();

table.Columns.Add("ID", typeof(int));

table.Columns.Add("Name", typeof(string));

table.Columns.Add("Age", typeof(int));

table.Rows.Add(1, "Alice", 25);

table.Rows.Add(2, "Bob", 28);

以上代码通过Add方法向DataTable中添加了两行数据。

3. DataTable的数据操作

3.1 添加行

可以通过调用Rows的Add方法向DataTable中添加新的行。

DataRow row = table.NewRow();

row["ID"] = 3;

row["Name"] = "Carol";

row["Age"] = 30;

table.Rows.Add(row);

3.2 删除行

可以通过调用Rows的Remove方法来删除指定的行。

DataRow row = table.Rows.Find(2);

if (row != null)

{

table.Rows.Remove(row);

}

3.3 修改行的值

可以通过直接修改DataRow的字段值来修改行的值。

DataRow row = table.Rows.Find(1);

if (row != null)

{

row["Name"] = "Alex";

row["Age"] = 26;

}

4. 查询和筛选数据

4.1 查询所有数据

可以通过遍历DataTable的所有行来查询所有的数据。

foreach (DataRow row in table.Rows)

{

Console.WriteLine("ID: {0}, Name: {1}, Age: {2}", row["ID"], row["Name"], row["Age"]);

}

4.2 根据条件查询

可以使用Select方法根据条件查询符合条件的数据。

DataRow[] rows = table.Select("Age > 25");

foreach (DataRow row in rows)

{

Console.WriteLine("ID: {0}, Name: {1}, Age: {2}", row["ID"], row["Name"], row["Age"]);

}

5. DataTable的常用属性和方法

5.1 属性

5.1.1 TableName:获取或设置DataTable的名称。

table.TableName = "Employee";

5.1.2 Columns:获取DataTable的所有列。

foreach (DataColumn column in table.Columns)

{

Console.WriteLine(column.ColumnName);

}

5.1.3 Rows:获取DataTable的所有行。

foreach (DataRow row in table.Rows)

{

Console.WriteLine(row["Name"]);

}

5.2 方法

5.2.1 NewRow():创建一个新的DataRow。

DataRow row = table.NewRow();

row["ID"] = 4;

row["Name"] = "David";

row["Age"] = 32;

5.2.2 Find():根据主键值查找行。

DataRow row = table.Rows.Find(3);

if (row != null)

{

Console.WriteLine("ID: {0}, Name: {1}, Age: {2}", row["ID"], row["Name"], row["Age"]);

}

5.2.3 Select():根据条件筛选行。

DataRow[] rows = table.Select("Age > 30");

foreach (DataRow row in rows)

{

Console.WriteLine("ID: {0}, Name: {1}, Age: {2}", row["ID"], row["Name"], row["Age"]);

}

6. 总结

本文介绍了C#中使用DataTable的几种用法,包括创建和初始化DataTable、对DataTable进行数据操作、查询和筛选数据以及常用的属性和方法。DataTable是一个灵活且强大的数据表格对象,可以帮助我们方便地存储和处理数据。

后端开发标签