dotConnect for MySQL Documentation
Devart.Data.MySql Namespace / MySqlDataAdapter Class
Members Example

In This Topic
    MySqlDataAdapter Class
    In This Topic
    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.
    Syntax
    Remarks
    The MySqlDataAdapter serves as a bridge between a System.Data.DataSet and a data source for retrieving and saving data. The MySqlDataAdapter provides this bridge by using System.Data.Common.DbDataAdapter.Fill to load data from the data source into the System.Data.DataSet, and using System.Data.DataSet.Update() to send changes made in the System.Data.DataSet back to the data source.

    MySqlDataAdapter is used in conjunction with MySqlConnection and MySqlCommand to increase performance when connecting to MySQL.

    The MySqlDataAdapter also includes the SelectCommand, InsertCommand, DeleteCommand, UpdateCommand, and TableMappings properties to facilitate loading and updating of data.

    Note: This class is not available in .NET Standard 1.3 compatible assembly. It is available only in the assembly for full .NET Framework and .NET Standard 2.0 compatible assembly.

    Example
    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
    Inheritance Hierarchy

    System.Object
       System.MarshalByRefObject
          System.ComponentModel.Component
             System.Data.Common.DataAdapter
                System.Data.Common.DbDataAdapter
                   Devart.Common.DbDataAdapter
                      Devart.Data.MySql.MySqlDataAdapter

    Requirements

    Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

    See Also