Mettre a jour la base de donnees a partir du datatable
Bonjour,
J’ai un problème en essayant de mettre à jour ma base de données.
J’ai une exception « La génération SQL dynamique de UpdateCommand n'est pas prise en charge pour un SelectCommand qui ne retourne pas des informations de colonne clé. »
J’essaye de créer une cle primaire j’ai une autre exception « Ces colonnes n'ont pas actuellement de valeurs uniques. »
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
da = new OleDbDataAdapter("SELECT * FROM PRODUITS WHERE CODE = " + "'" + numeroProcessus + "'" + " ORDER BY RANG ", ctn);
bldr = new OleDbCommandBuilder(da);
ds = new DataSet();
bldr.DataAdapter = da;
da.Fill(ds, "PRODUITS");
DataTable datatable = ds.Tables["PRODUITS"];
int index;
datatable.DefaultView.Sort = "CODE ASC";
index = datatable.DefaultView.Find(numeroProcessus);
DataRow dr = datatable.Rows[index];
//definition de la clé primaire composée
datatable.PrimaryKey = new DataColumn[] { datatable.Columns["CODE"], datatable.Columns["RANG"] };
DataRow[] lignes = datatable.Select("CODE " + "'" + numeroProcessus + "'");
dr.BeginEdit();
dr["TYPE"] = 'E';
dr.EndEdit();
bldr.GetUpdateCommand();
lignes = datatable.Select(null, null, DataViewRowState.ModifiedCurrent);
//da.UpdateCommand = bldr.GetUpdateCommand();
da.Update(datatable);
} |
Merci pour vos reponses