Represents a set of data commands and a data source connection that are used to fill the
System.Data.DataSet and update a MySQL data.
The following example demonstrates how to retrieve and manipulate data using
MySqlDataAdapter.
public void UseDataAdapter(MySqlConnection myConnection)
{
MySqlDataAdapter myAdapter = new MySqlDataAdapter("SELECT DeptNo, DName FROM Test.Dept", myConnection);
myAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
DataSet myDataSet = new DataSet();
myAdapter.Fill(myDataSet,"Departments");
object[] rowVals = new object[2];
rowVals[0] = 40;
rowVals[1] = "Operations";
myDataSet.Tables["Departments"].Rows.Add(rowVals);
myAdapter.InsertCommand = new MySqlCommand("INSERT INTO Test.Dept (DeptNo, DName) " +
"VALUES (:DeptNo, :DName)", myConnection);
myAdapter.InsertCommand.Parameters.Add("DeptNo", MySqlType.Int, 0, "DeptNo");
myAdapter.InsertCommand.Parameters.Add("DName", MySqlType.VarChar, 15, "DName");
myAdapter.Update(myDataSet,"Departments");
//Get all data from all tables within the dataset
foreach(DataTable myTable in myDataSet.Tables)
{
foreach(DataRow myRow in myTable.Rows)
{
foreach (DataColumn myColumn in myTable.Columns)
{
Console.Write(myRow[myColumn]+"\t");
}
Console.WriteLine();
}
Console.WriteLine();
}
}
Public Sub UseDataAdapter(ByVal myConnection As MySqlConnection)
Dim myAdapter As MySqlDataAdapter = New MySqlDataAdapter("SELECT DeptNo, DName FROM Test.Dept", myConnection)
myAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
Dim myDataSet As DataSet = New DataSet
myAdapter.Fill(myDataSet, "Departments")
Dim rowVals(1) As Object
rowVals(0) = "40"
rowVals(1) = "Operations"
myDataSet.Tables("Departments").Rows.Add(rowVals)
myAdapter.InsertCommand = New MySqlCommand("INSERT INTO Test.Dept (DeptNo, DName) " & _
"VALUES (:DeptNo, :DName)", myConnection)
myAdapter.InsertCommand.Parameters.Add("DeptNo", MySqlType.Int, 0, "DeptNo")
myAdapter.InsertCommand.Parameters.Add("DName", MySqlType.VarChar, 15, "DName")
myAdapter.Update(myDataSet, "Departments")
Dim myTable As DataTable
Dim myRow As DataRow
Dim myColumn As DataColumn
' Get all data from all tables within the dataset
For Each myTable In myDataSet.Tables
For Each myRow In myTable.Rows
For Each myColumn In myTable.Columns
Console.Write(myRow(myColumn) & Chr(9))
Next myColumn
Console.WriteLine()
Next myRow
Console.WriteLine()
Next myTable
End Sub