Supprimer élément de listbox dans BDD en VB ?
RésoluHunzimmer Messages postés 65 Statut Membre -
je travaille sur visual basic 2008 et une base de données access 2000
je voudrais savoir comment fait-on pour supprimer un élement qui est dans une listebox et qui se supprime en meme temps dans ma base de donnée
Merci
4 réponses
Le fil examine comment supprimer un élément d'une ListBox et supprimer simultanément l'enregistrement correspondant dans une base Access 2000 avec VB 2008 sous Windows XP. Des propositions préconisent d'ouvrir la connexion OleDb avant la boucle et d'exécuter la suppression dans la base, tout en gérant correctement l'itération de la ListBox. D'autres signalent une erreur de référence d'objet lors de l'itération (For i = LB_Liste.Items.Count - 1 To 0 Step -1), indiquant un souci d'initialisation ou de synchronisation entre ListBox et la base. D'autres interventions évoquent des approches non directement liées, comme l'usage d'un FolderBrowserDialog plutôt que de sélectionner des fichiers, sans apporter d'élément concret à la suppression en base.
-
moi je lai fait mais avec une checbox via un formulaire html je te fille mon code peut etre sa tinspirera
$supr=(isset($_POST['supr']));
if($supr==1)
{
$idsupr=$_POST['supr'];
$req="delete from client where id='$idsupr' ";
$del=mysql_query($req);
} -
Tu veux que ce soit fait en 1 fois ou il peut y avoir deux étapes (1 suppression de la liste + 1 suppression de la bdd) ?
Pour juste le supprimer de la liste, va voir par ici, on y a passé pas mal de temps : https://forums.commentcamarche.net/forum/affich-18146667-retirer-des-element-d-une-listbox-en-vb-
-
-
-
je viens de trouver ce code sur un forum
ques tu en pence ?
Dim C As Integer = ListBox1.SelectedItems.Count
While C <> 0
Dim cmd As SqlCommand
cmd = Maconnexion.CreateCommand
cmd.CommandText = "DELETE FROM dbo.client WHERE nom = " & ListBox1.SelectedItem.ToString & " ; "
MsgBox(cmd.CommandText)
cmd.ExecuteNonQuery()
C = C - 1
Dim I As Integer = ListBox1.SelectedIndex
'ListBox1.SelectedIndices.Remove(I)
ListBox1.Items.RemoveAt(I)
End While
End Sub -
Tu sélectionnes l'élément dans ta liste puis tu le supprime de ta liste (code ici : https://forums.commentcamarche.net/forum/affich-18146667-retirer-des-element-d-une-listbox-en-vb
Tu rajoutes la suppression dans la base de donnée.
Si tu préfères autre chose, on tentera autre chose
-
-
Peux tu tenter ce code là et me dire ce que ça fait ?
Dim LB_Liste As ListBox Dim oleDbConnex As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=C:\Mes documents\bdd.mdb") Dim oleCmd As New OleDb.OleDbCommand() oleCmd.Connection = oleDbConnex For i = LB_Liste.Items.Count - 1 To 0 Step -1 If LB_Liste.GetSelected(i) Then oleCmd.CommandText = "Delete * from Joueurs where NomJoueur = '" & LB_Liste.Items(i).ToString & "' " oleCmd.ExecuteReader() LB_Liste.Items.RemoveAt(i) i = i - 1 End If Next i -
VOIla la solution pour supprimer un element dans une listebox dans une base de données access :
Dim oleDbConnex As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=C:\Mes documents\bdd.mdb")
Dim oleCmd As New OleDb.OleDbCommand()
oleCmd.Connection = oleDbConnex
oleDbConnex.Open()
For i = LB_Liste.Items.Count - 1 To 0 Step -1
If LB_Liste.GetSelected(i) Then
oleCmd.CommandText = "Delete * from Joueurs where NomJoueur = '" & LB_Liste.Items(i).ToString & "' "
oleCmd.ExecuteReader()
LB_Liste.Items.RemoveAt(i)
i = i - 1
End If
Next i