Send feedback on this topic.
Teradata.Client.Provider
Behavior When Batch Processing with Different Settings
.NET Data Provider for Teradata > Developer's Guide > Working with the Data Provider Features > TdCommandBuilder and TdDataAdapter Overview > Batch Update > Behavior When Batch Processing with Different Settings

The following table show the behavior of DataAdapter.Update with different combinations of settings:

Type of DML Session Mode Explicit Transaction Started Continue Update On Error Behavior
INSERT Teradata or ANSI Yes False
  • Rows in batches are processed up to the batch that contains an error and will be applied to the table.
  • Rows that were successfully processed in the batch that contained the error will be applied to the table.
  • The number of rows successfully processed will be returned.
  • Application can decide whether to commit changes.
INSERT Teradata or ANSI Yes True
  • All rows are processed.
  • Update returns the number of rows that were successfully processed.
INSERT Teradata or ANSI No False
  • Rows in batches are processed up to the batch that contains an error and will be applied to the table.
  • Rows that were successfully processed in the batch that contained the error will be applied to the table.
  • The number of rows successfully processed will be returned.
  • The exception that is thrown from Update will be the same exception that was generated by the row that caused the error.
INSERT Teradata or ANSI No True
  • All rows processed.
  • Update returns the number of rows that were successfully processed.
Update or Delete Teradata Yes False
  • When an error occurs in a batch, all the parameter rows that have been successfully processed will be rolled back.
Update or Delete ANSI Yes False
  • Rows in the batch that contained the error will not get applied to the table.
  • Rows in batches that have already been processed successfully will be applied.
  • Batches that follow the batch that contains the error will not get processed.
Update or Delete Teradata or ANSI No False
  • Rows in the batch that contains the error will get applied to the table.
  • Batches that have already been processed get applied to table.
  • Processing stops at the batch that contains the error.
Update or Delete Teradata or ANSI No True
  • All rows are processed.
  • Update returns the number of rows that were successfully processed.
Update or Delete Teradata Yes True
  • When a row fails an update in a batch, all the rows in batches that have already been successfully processed and applied to the SQL table will get rolled back.
  • The rows that were successfully processed in the batch that contained the error will be applied to the SQL table.
  • Batches that follow will be processed.
  • The value returned from TdDataAdapter.Update is the number of rows that were successfully processed. This includes the rows that were rolled back.
Update or Delete ANSI Yes True
  • All rows are processed.
  • Update returns the number of rows that were successfully processed.

See Also

Guideline for Efficiently Processing Batches

Working with Batch Size

Continue Processing When Errors Occur

TdTransaction

How Statement Independence Affects Batch Update