dotConnect for MySQL Documentation
UpdateCommand Property
See Also  Example Send comments on this topic.
Devart.Data.MySql Namespace > MySqlDataAdapter Class : UpdateCommand Property

Gets or sets a MySQL statement used to update records in the data source.

Syntax

Visual Basic (Declaration) 
Public Shadows Property UpdateCommand As MySqlCommand
C# 
public new MySqlCommand UpdateCommand {get; set;}

Property Value

A MySqlCommand used during an update operation to update records in the data source that correspond to modified rows in the System.Data.DataSet.

Remarks

During an update operation, if MySqlDataAdapter.UpdateCommand is not set and primary key information is present in the System.Data.DataSet, you can use the MySqlCommandBuilder class to automatically generate MySqlDataAdapter.UpdateCommand, and additional commands needed to reconcile the System.Data.DataSet to the data source. To do this, set the MySqlDataAdapter.SelectCommand property of the MySqlDataAdapter. For more information see "Automatically Generated Commands" in the Microsoft .NET Framework SDK documentation.

Note: If execution of this command returns rows, these rows may be merged with the System.Data.DataSet depending upon how you set the Devart.Common.DbCommandBase.UpdatedRowSource property of the MySqlCommand object.

Example

The following example demonstrates how to retrieve and manipulate data using MySqlDataAdapter.
C#csharpCopy Code
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");
  myDataSet.Tables["Departments"].Rows[3]["DName"] = "Researches";
  myAdapter.UpdateCommand = new MySqlCommand("UPDATE Test.Dept SET DeptNo = :DeptNo, DName = :DName " +
      "WHERE DeptNo = :oldDeptNo", myConnection);
  myAdapter.UpdateCommand.Parameters.Add("DeptNo", MySqlType.Int, 0, "DeptNo");
  myAdapter.UpdateCommand.Parameters.Add("DName", MySqlType.VarChar, 15, "DName");
  myAdapter.UpdateCommand.Parameters.Add("oldDeptNo", MySqlType.Int, 0, "DeptNo").SourceVersion = DataRowVersion.Original;
  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();
  }
}
C#Visual BasicCopy Code
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")
  myDataSet.Tables("Departments").Rows(3)("DName") = "Researches"
  myAdapter.UpdateCommand = New MySqlCommand("UPDATE Test.Dept SET DeptNo = :DeptNo, DName = :DName " & _
        "WHERE DeptNo = :oldDeptNo", myConnection)
  myAdapter.UpdateCommand.Parameters.Add("DeptNo", MySqlType.Int, 0, "DeptNo")
  myAdapter.UpdateCommand.Parameters.Add("DName", MySqlType.VarChar, 15, "DName")
  myAdapter.UpdateCommand.Parameters.Add("oldDeptNo", MySqlType.Int, 0, "DeptNo").SourceVersion = DataRowVersion.Original
  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

Requirements

Platforms:Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, Windows Vista, Windows Server 2008 family, Windows 7, Windows 8, Windows 10, Windows Server 2012 family.

See Also