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