For more information, see Validate data in datasets.Information about the changes in a dataset is maintained in two ways: by flagging rows that indicate that they have changed (Row State), and by keeping multiple copies of a record (Data Row Version).The following table details the possible values of the Data Row Version enumeration: The current version of a record contains all modifications that have been performed on the record since the last time Accept Changes was called.If the row has been deleted, there is no current version.Constraints are automatically disabled when the Merge method is invoked on a dataset.When the merge is complete, if there are any constraints on the dataset that cannot be enabled, a Constraint Exception is thrown.However, you can also use different adapters, for example, to move data from one data source to another or to update multiple data sources.If you aren't using data binding, and are saving changes for related tables, you have to manually instantiate a variable of the auto-generated dataset).
(A concurrency violation occurs when another user modifies a record in the data source after the dataset has been filled.) To make changes to an existing data row, add or update data in the individual columns.
For example, you might inadvertently write data of the wrong type to a column, or data that's too long, or data that has some other integrity problem.
Or, you might have application-specific validation checks that can raise custom errors during any stage of an update event.
If you do send the changes back to the database, a second step is required.
If you aren't using data-bound controls, you have to manually call the method of the same Table Adapter (or data adapter) that you used to populate the dataset.