How to: Add Rows to a DataTable
To add new records into a dataset, a new data row must be created and added to the DataRow collection (Rows) of a DataTable in the dataset. The following procedures show how to create a new row and insert it into a DataTable. Examples are provided for both typed and untyped datasets.
Note |
|---|
| Applications that use data-bound controls typically get the ability to add new records through the "add new" button on a BindingNavigator Control. |
Inserting a New Record into a Typed Dataset
For this example, it is assumed that a dataset has a Customers DataTable and has two columns named CustomerID and CompanyName. Typed datasets expose the column names as properties of the typed DataRow object; in this case the CustomersRow.
To add a new record to a typed dataset
-
Declare a new instance of the typed dataset. In the following example, you declare a new instance of the CustomersRow class, assign it a new row, populate the columns with data, and add the new row to the Customers table's Rows collection:
NorthwindDataSet.CustomersRow newCustomersRow = northwindDataSet1.Customers.NewCustomersRow(); newCustomersRow.CustomerID = "ALFKI"; newCustomersRow.CompanyName = "Alfreds Futterkiste"; northwindDataSet1.Customers.Rows.Add(newCustomersRow);NorthwindDataSet.CustomersRow newCustomersRow; newCustomersRow = northwindDataSet1.get_Customers().NewCustomersRow(); newCustomersRow.set_CustomerID("ALFKI"); newCustomersRow.set_CompanyName("Alfreds Futterkiste"); northwindDataSet1.get_Customers().get_Rows().Add(newCustomersRow);
Inserting a New Record into an Untyped Dataset
For this example, it is assumed that the untyped dataset has a Customers DataTable that has two columns named CustomerID and CompanyName. Untyped datasets require knowledge of column names or indices when coding. This example uses column names.
To add a record to an untyped dataset
-
Call the NewRow method of a DataTable to create a new, empty row. This new row inherits its column structure from the data table's DataColumnCollection. The following code creates a new row, populates it with data, and adds it to the table's Rows collection.
DataRow newCustomersRow = dataSet1.Tables["Customers"].NewRow(); newCustomersRow["CustomerID"] = "ALFKI"; newCustomersRow["CompanyName"] = "Alfreds Futterkiste"; dataSet1.Tables["Customers"].Rows.Add(newCustomersRow);
DataRow newCustomersRow = dataSet1.get_Tables().get_Item("Customers").NewRow(); newCustomersRow.set_Item("CustomerID", "ALFKI"); newCustomersRow.set_Item("CompanyName", "Alfreds Futterkiste"); dataSet1.get_Tables().get_Item("Customers").get_Rows().Add(newCustomersRow);
See Also
Tasks
How to: Edit Rows in a DataTableHow to: Delete Rows in a DataTable
How to: Commit Changes in a Dataset
How to: Customize Item Addition with the Windows Forms BindingSource
Reference
AddingNewColumns
Concepts
Adding Data to a TableOther Resources
Editing Data in Your ApplicationBindingSource Component
Manipulating Data in a DataTable
Note