TrafMaxime
Messages postés288Date d'inscriptionmercredi 4 mai 2005StatutMembreDernière intervention26 janvier 2012
-
3 juil. 2006 à 12:36
TrafMaxime
Messages postés288Date d'inscriptionmercredi 4 mai 2005StatutMembreDernière intervention26 janvier 2012
-
3 juil. 2006 à 17:10
Salut à tous, voilà je cherche à vider tous les enregistrements d'une table Access.. tout à toujours bien marché sauf ce matin, où avec le code suivant, il me renvoie l'erreur : "Concurrency violation : the DeleteCommand affected 0 records." à la ligne de l'update :
Dim vidi As String = "select statistiks.* from statistiks"
Dim david As New OleDbDataAdapter(vidi, cn)
Dim dsvid As New DataSet()
dsvid.Clear()
Dim q, w As Integer
q = david.Fill(dsvid)
For w = 0 To q - 1
dsvid.Tables(0).Rows(w).Delete()
Next
Dim ocdi As OleDbCommandBuilder = New OleDbCommandBuilder(david)
david.DeleteCommand = ocdi.GetDeleteCommand
Dim ocki As OleDbCommandBuilder = New OleDbCommandBuilder(david)
david.UpdateCommand = ocki.GetUpdateCommand
Try
david.Update(dsvid)
Catch gg As Exception
MessageBox.Show(gg.Message)
End Try
Tout idée, remarque, conseil, autre manière de procéder est la bienvenue,
bien amicalement,
Maxime
.Maytheforcebewithyou.Maxime.
TrafMaxime
Messages postés288Date d'inscriptionmercredi 4 mai 2005StatutMembreDernière intervention26 janvier 20121 3 juil. 2006 à 17:10
Bon, j'ai résolu le problème sans comprendre en plaçant l'update dans la boucle (ligne par ligne), au lieu de balancer tout le tableau en fin de programme.
Mais 'Truncate' avait l'air pas mal.. ceci dit quelle méthode du Dadapter faut-il que j'appelle pour l'exécuter ? (j'ai parcourus 10 sec l'aide de micro...)
a part 'fill et 'update.. (avec lesquels on fait beaucoup, déjà..) le reste, c'est newland.