Greetings:
Actually i spent a lot of time trying to do this with the default updateCommand, but, with no satisfactory results, my suggestion is to use sql commands with an OleDbCommand, what you need is to check if there was an update and if so enter a sql instruction:
if(myDataSet.HasChanges()){
DataTable update=new DataTable("name of your table");
update=contenedor.Tables[0];
int len=0;
//Check the length of the table rows
foreach(DataRow myRow in update.Rows)
{
len++;
}
conexion.Open();
for(int i=lenI;i<len;i++)
{
Object linea=update.Rows[i].ItemArray;
comandos1=new OleDbCommand("INSERT INTO tabla1"+" VALUES ("+linea[0]+","+linea[1]+","+linea[2]+")",conexion);
comandos1.ExecuteNonQuery();
}
conexion.Close();
}
This is the easy way, overwrite all of them with the new stored values, the beauty of this is that you also insert new records, the problem is that you first need to check that the values are valid and you are not changing protected values, if you want to do it correctly just check wich of the fields was changed by comparing your object (in this case linea) to the db and just change where they don`t match.
Hope this helps and sorry for my bad English, it`s not my native language :o