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. »
Merci pour vos reponses
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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); }
Partager