With an insert you only handle the insert of a row
In a datatable a dataadapter update does (in short):
Checks which rows are changed;
Checks if the connection is open and if not opens it;
Updates the rows which are changed by insert, delete or update;
Checks for error during that and set the errorstates;
Set all the rowstates to unchanged in the datatable and removes the deleted rows (does automatically an updatechanges);
if the connection was opened by the dataadapter closes it again.
There are some more around the key when it is an autoidentifier but I think I have above the most general ones.
Success
Cor