dotConnect for Google BigQuery Documentation
Devart.Data.BigQuery Namespace / BigQueryDataAdapter Class / UpdateCommand Property
Example

On this page
    UpdateCommand Property
    On this page
    Gets or sets a Google BigQuery statement used to update records in the data source.
    Syntax
    'Declaration
     
    Public Shadows Property UpdateCommand As BigQueryCommand
    public new BigQueryCommand UpdateCommand {get; set;}

    Property Value

    A BigQueryCommand 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 UpdateCommand is not set and primary key information is present in the System.Data.DataSet, you can use the BigQueryCommandBuilder class to automatically generate UpdateCommand, and additional commands needed to reconcile the System.Data.DataSet to the data source. To do this, set the SelectCommand property of the BigQueryDataAdapter. 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 BigQueryCommand object.

    Example
    The following example demonstrates how to retrieve and manipulate data using BigQueryDataAdapter.
    public void UseDataAdapter(BigQueryConnection bigQueryConnection)
    {
      BigQueryDataAdapter myAdapter = new BigQueryDataAdapter("SELECT DeptNo, DName FROM Dept", bigQueryConnection);
      myAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
      DataSet myDataSet = new DataSet();
      myAdapter.Fill(myDataSet,"Departments");
      myDataSet.Tables["Departments"].Rows[3]["DName"] = "Researches";
      myAdapter.UpdateCommand = new BigQueryCommand("UPDATE Dept SET DeptNo = :DeptNo, DName = :DName " +
          "WHERE DeptNo = :oldDeptNo", bigQueryConnection);
      myAdapter.UpdateCommand.Parameters.Add("DeptNo", BigQueryType.Int, 0, "DeptNo");
      myAdapter.UpdateCommand.Parameters.Add("DName", BigQueryType.VarChar, 15, "DName");
      myAdapter.UpdateCommand.Parameters.Add("oldDeptNo", BigQueryType.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();
      }
    }
    Public Sub UseDataAdapter(ByVal bigQueryConnection As BigQueryConnection)
      Dim myAdapter As BigQueryDataAdapter = New BigQueryDataAdapter("SELECT DeptNo, DName FROM Dept", bigQueryConnection)
      myAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
      Dim myDataSet As DataSet = New DataSet
      myAdapter.Fill(myDataSet, "Departments")
      myDataSet.Tables("Departments").Rows(3)("DName") = "Researches"
      myAdapter.UpdateCommand = New BigQueryCommand("UPDATE Dept SET DeptNo = :DeptNo, DName = :DName " & _
            "WHERE DeptNo = :oldDeptNo", bigQueryConnection)
      myAdapter.UpdateCommand.Parameters.Add("DeptNo", BigQueryType.Int, 0, "DeptNo")
      myAdapter.UpdateCommand.Parameters.Add("DName", BigQueryType.VarChar, 15, "DName")
      myAdapter.UpdateCommand.Parameters.Add("oldDeptNo", BigQueryType.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
    See Also