Problème sur suppression d'enregistrements suivi d'ajouts avec clés égales

jmcmade Messages postés 2 Date d'inscription lundi 15 janvier 2007 Statut Membre Dernière intervention 5 avril 2009 - 5 avril 2009 à 02:09
jmcmade Messages postés 2 Date d'inscription lundi 15 janvier 2007 Statut Membre Dernière intervention 5 avril 2009 - 5 avril 2009 à 02:16
Bonjour,

Je sèche sur un pb ado.net
je veux d'abord supprimer une série d'enregistrements d'une table, puis faire l'ajout de nouveaux enregistrements qui peuvent avoir la même clé que des renregistrements supprimés.
La suppression se passe bien , mais j'ai un message d'erreur "Cette ligne appartient déjà à cette table." quand je fait l'ajout.

Voici le code:
'-------------------------------------------
dim conn_bbl As OleDb.OleDbConnection
dim da_lists As New OleDbDataAdapter
dim tb_lists As New DataTable
Dim rwl As DataRow
Dim i As Integer
'
conn_bbl = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & filename) 'Connection string
conn_bbl.Open()
da_lists.SelectCommand = New OleDbCommand("select * from LISTS", conn_bbl)
da_lists.Fill(ds_bbl, "LISTS")
tb_lists = ds_bbl.Tables("LISTS")
'-----------------------delete rows
For Each rwl In tb_lists.Rows
If rwl("L_ID") = fid Then rwl.Delete()
Next rwl
da_lists.Update(ds_bbl, "LISTS")
tb_lists.AcceptChanges()
'---------------------------
'les enregistrements sont bien supprimés dans la source.
'-----------------------add new rows
Dim listrow As DataRow = tb_lists.NewRow
For i = 0 To dgw_list.Rows.Count - 1
listrow("L_ID") = rwf("F_ID")
listrow("L_VALUE") = dgw_list.Item(0, i).Value
listrow("L_CODE") = dgw_list.Item(1, i).Value
listrow("L_POSITION") = i
listrow("L_PARENT_CODE") = 0
tb_lists.Rows.Add(listrow)
Next i

'-------------------------------------------------

1 réponse

jmcmade Messages postés 2 Date d'inscription lundi 15 janvier 2007 Statut Membre Dernière intervention 5 avril 2009
5 avril 2009 à 02:16
Désolé: mon post précédent n'est pas sur le bon forum (ado.net) et la mise en forme est ...;
0
Rejoignez-nous