首页  >  文章  >  后端开发  >  数据集到数据表 C#

数据集到数据表 C#

WBOY
WBOY原创
2024-09-03 15:21:26741浏览

以下文章提供了 C# 数据集到数据表的概述。每当必须从数据库收集数据时,数据集就会在不与数据库持续连接的情况下完成工作,在数据库中创建虚拟数据库,这些虚拟数据库看起来像原始数据库,并且数据存储在同一位置。因此,我们可以说数据集是数据库结构的表示。数据表是数据库中一张表的表示,其中行和列在数据库中被正确命名。它还表示结构中行、列、行和列的约束的缓存。 Datatable 是 DotNet 的基础,其中数据集和数据视图都使用 Datatable。

什么是 C# 数据集到数据表?

  • 数据集:数据集提供了一致的可编程模型,无论数据源如何,这有助于在数据库中进行数据的内存表示。数据集中的表可以借助 DataTables、DataViews 甚至仅使用数据来创建。我们还可以借助数据适配器创建数据集。
  • 数据表:数据集中的单个表在数据表的帮助下表示,它可以单独创建或与数据集协作创建。结构由数据库中的列、行和约束表示,表中有ForeignKeyConstraint和Unique约束。

将数据集转换为数据表 C#

将数据集转换为数据表很容易,因为它已经有表格了。

要编写的查询是:

DataTable myTable = dataSet.Tables[0]

我们还可以使用名称来调用表。

DataTable employeesTable = dataSet.Tables["Employees"]

C# 数据集与数据表之间的差异

  • 数据集是表的集合,因此它就是数据表本身。
  • 数据表是构成表格的行和列的集合。
  • 数据集定义了表之间的关系以及将它们包含在数据集中的约束;由于 Datatable 中只表示一张表,因此不需要在 Datatable 中定义关系。
  • 数据集比数据表重,因为数据表只有一个表,但数据集是数据表的集合。
  • 数据表中一次只能获取一行,而数据集中可以显示多行和多列。

创建表 C#

我们可以直接或通过数据集创建数据表。数据表构造函数是创建表的一种方法,另一种方法是对数据集的表属性使用 add 方法。数据适配器对象具有可用于数据表中架构的 fillschema 方法,或者可以使用预定义的 xml 架构。

一旦数据集中出现数据表,我们就无法在任何其他数据集中添加相同的表。表的列集合是我们添加从 xml 或 fillschema 方法派生的数据模式的地方。主列对于表以及列的表约束是必需的。在定义架构和列后,可以将数据行对象添加到表的行中。 Tablename属性不需要在前期定义,可以留空,也可以稍后命名。如果要添加到数据集中,最好为表命名。如果表名重复就会出现异常。

我们可以使用以下脚本创建一个员工表。

DataTable currentTable = new DataTable("Employees")

我们正在将表添加到数据集中。

DataSet employeeDS = new DataSet();
DataTable empTable = customerDS.Tables.Add("EmpTable");

我们在示例中创建一个满足所有相关条件的表,并在表中设置主键。

// Create the Table
DataTable ProjectsTable = new DataTable("Projects");
// Build the Projects schema
projectsTable.Columns.Add("ID"
Type.GetType("System.Int32"));
projectsTable.Columns.Add("Name"
Type.GetType("System.String"));
projectsTable.Columns.Add("Estimate"
Type.GetType("System.Int32"));
// Set up the ID column as the PrimaryKey
DataColumn[] prmk = new DataColumn[1];
prmk[0] = ordersTable.Columns["ID"];
ordersTable.PrimaryKey = prmk;
ordersTable.Columns["ID"].AutoIncrement = true;
ordersTable.Columns["ID"].AutoIncrementSeed = 1;
ordersTable.Columns["ID"].ReadOnly = true;

Datatable构造函数用于创建项目,并在上面的示例中设置了increment、incrementseed、readonly属性。我们还可以设置数据表对象并将它们添加到数据集中。应在脚本中设置约束作为主键,并且必须将数据列对象添加到表中的列集合中。

DataSet employeeDS = new DataSet("EmpProject");
DataTable projectsTable = employeeDS.Tables.Add("Projects");
DataColumn pkCol = projectsTable.Columns.Add("ProjectID", typeof(Int32));
projectsTable.Columns.Add("ProjectType", typeof(Int32));
projectsTable.Columns.Add("CompanyName", typeof(string));
projectsTable.PrimaryKey = new DataColumn[] { pkCol };
New rows can be created with the below example in datatable.
DataRow workRow = currentTable.NewRow();
workRow["ProjectDuration"] = "4 weeks";
workRow[1] = "4 weeks";
currentTable.Rows.Add(workRow);
currentTable.Rows.Add(new Object[] { 1, "4 weeks" });
If we need to add 5 rows to the datatable, following code can be used.
DataRow workRow;
for (int i = 0; i <= 4; i++) {
workRow = currentTable.NewRow();
workRow[0] = i;
workRow[1] = "Duration" + i.ToString();
currentTable.Rows.Add(workRow);
}

行和列可用于访问表内的内容。我们还可以设置一些条件,例如状态、顺序来检查数据表中的数据。 find 方法也适用于数据表内的行检查。

数据集到数据表的 C# 示例

下面给出的是数据集到数据表 C# 的示例:

数据集到数据表 C#

数据集:

这是一个数据集的示例。我们在数据集学院中有两个数据表学生和部门。

代码:

using System;
using System. Data;
class Program
{
static void Main()
{
// Create 2 DataTable instances.
DataTable table1 = new DataTable("students");
table1.Columns.Add("name");
table1.Columns.Add("id");
table1.Rows.Add("mary", 1);
table1.Rows.Add("amir", 2);
DataTable table2 = new DataTable("department");
table2.Columns.Add("id");
table2.Columns.Add("physics");
table2.Rows.Add(1, "chemistry");
table2.Rows.Add(2, "maths");
// Create a DataSet and put both tables in it.
DataSet set = new DataSet("college");
set.Tables.Add(table1);
set.Tables.Add(table2);
// Visualize DataSet.
Console.WriteLine(set.GetXml());
}
}

我们可以使用上面创建学生和部门的代码来创建数据表。然后,我们可以根据需要在表中插入数据并在数据集中使用。

结论

数据集可以借助SqlDataAdapter来填充,它可以根据用户的需求来操作数据并更新数据。即使我们没有与数据的数据流连接,这也有助于处理数据。因此,在进行操作时不需要每次都访问数据库。

以上是数据集到数据表 C#的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn