以下文章提供了 C# 資料集到資料表的概述。每當必須從資料庫收集資料時,資料集就會在不與資料庫持續連接的情況下完成工作,在資料庫中建立虛擬資料庫,這些虛擬資料庫看起來像原始資料庫,並且資料儲存在同一位置。因此,我們可以說資料集是資料庫結構的表示。資料表是資料庫中一張表的表示,其中行和列在資料庫中被正確命名。它也表示結構中行、列、行和列的約束的快取。 Datatable 是 DotNet 的基礎,其中資料集和資料視圖都使用 Datatable。
將資料集轉換為資料表很容易,因為它已經有表格了。
要寫的查詢是:
DataTable myTable = dataSet.Tables[0]
我們也可以使用名稱來呼叫表格。
DataTable employeesTable = dataSet.Tables["Employees"]
我們可以直接或透過資料集建立資料表。資料表建構函數是建立表格的一種方法,另一種方法是對資料集的表屬性使用 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# 的範例:
資料集:
這是一個資料集的範例。我們在資料集學院中有兩個資料表學生和部門。
代碼:
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中文網其他相關文章!