Problème avec une requête de suppression

warzet Messages postés 44 Date d'inscription lundi 27 août 2007 Statut Membre Dernière intervention 1 novembre 2016 - 24 oct. 2013 à 08:45
khalidev Messages postés 5 Date d'inscription vendredi 1 novembre 2013 Statut Membre Dernière intervention 1 novembre 2013 - 1 nov. 2013 à 22:00
Salut à tous, j'ai un gros problème avec une requête de suppression de données dans une base Access que je souhaiterais vous soumettre à tous pour analyse. En effet, je souhaite supprimer tout un lot de données en une seule fois. Voici mon code:
        private void Click_Effacer(object sender, EventArgs e)
{
//Chaine de suppresion
string sSupprimerSQL = "DELETE ALL FROM [Fiche_PP]" + "\n" +
"(WHERE [code_enseignant] = '" + txtCodeEnseignant.Text + "'AND" + "\n" +
"[code_classe] = " + this.txtCodeClasse.Text + "AND" + "\n" +
"[code_annee] = " + this.txtCodeAnneeScolaire.Text + "AND" + "\n" +
"[code_trimestre] = " + this.txtCodeTrimestre.Text + ")";

//Declaration d'une boite de dialogue "YesNo"
//Si l'utilisateur confirme la suppresion on exécute la requette
if (MessageBox.Show("Êtes-vous sûr de vouloir Supprimer" + "\n" +
"ces enregistrements?" + "\n" +
"A T T E N T I O N." + "\n" +
"Cette opération est irréversible...", this.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
try
{

//Declaration de ma connexion
OleDbDataAdapter Adapt = new OleDbDataAdapter(sSupprimerSQL, strConex);
//Ma commande dans un dataset different de celui d'afficher ..
Adapt.Fill(DtSetDel);
//Mise a jours du Label
iMax--;
i = 1;
Afficher();
Label_Effectif();
//Clear du DtSet pour la prochaine suppresion
DtSetDel.Clear();

Montrer_Text(false);
nbTotalNotes();

this.btnNouveau.Text = "&Nouveau";
this.btnNouveau.BackColor = Color.Navy;
this.btnNouveau.Enabled = true;

this.btnAnnuler.Text = "&Chercher";
this.btnAnnuler.BackColor = Color.Navy;

this.btnModifier.Text = "&Modifier";
this.btnModifier.BackColor = Color.Navy;

this.btnModifier.Enabled = false;
this.btnSupprimer.Enabled = false;
this.btnModifier.Visible = false;
this.btnSupprimer.Visible = false;

this.btnPrecedent.Enabled = true;
this.btnSuivant.Enabled = true;

this.txtCodeEleve.Enabled = true;
this.txtCodeEnseignant.Enabled = true;

// Affiche le premier élève par ordre alphabétique
frmFiche_PP_Trimestrielle_Load(null, null);

}
catch (FileNotFoundException ex)//(Exception ex)
{
//MessageBox.Show("Pas d'Elève sélectionné", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
MessageBox.Show(ex.Message, "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);//MessageBox.Show(ex.Message, "Erreur");
}
}
}


Et j'ai comme réponse le message suivant: "Erreur de syntaxe dans l'instruction DELETE.
Aidez moi. Merci

6 réponses

remiki90 Messages postés 132 Date d'inscription samedi 28 juillet 2012 Statut Membre Dernière intervention 27 décembre 2021 3
24 oct. 2013 à 10:53
Essaie avec:
DELETE * from ...........

0
Bonjour

Enleve le ALL de ta requette SQL

il doit être du genre DELETE FROM TaTable
et je crois tout ira bien
0
warzet Messages postés 44 Date d'inscription lundi 27 août 2007 Statut Membre Dernière intervention 1 novembre 2016
25 oct. 2013 à 08:34
Merci, je vaiis essayer cela, je te donnerai des nouvelles
0
warzet Messages postés 44 Date d'inscription lundi 27 août 2007 Statut Membre Dernière intervention 1 novembre 2016
25 oct. 2013 à 08:50
Je viens de rectifier la requête mais j'ai toujours le même problème. Je tenais à préciser que cette requête devrais supprimer pas moins de 55 enregistrements liés par les mêmes conditions de regroupement de cette requête.
0
remiki90 Messages postés 132 Date d'inscription samedi 28 juillet 2012 Statut Membre Dernière intervention 27 décembre 2021 3
25 oct. 2013 à 11:14
salut, est-que ton [Fiche_PP] est une TABLE?
0
warzet Messages postés 44 Date d'inscription lundi 27 août 2007 Statut Membre Dernière intervention 1 novembre 2016
28 oct. 2013 à 07:34
Oui mon [Fiche_PP] est une table et je souhaite y effacer plusieurs enregistrement remplissant la condition décrite dans la requête. Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jordane45 Messages postés 38173 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 10 mai 2024 344
28 oct. 2013 à 08:21
Bonjour.
N'aurais tu pas des soucis d'espace ?
Ajoute des espaces avant tes AND.
0
warzet Messages postés 44 Date d'inscription lundi 27 août 2007 Statut Membre Dernière intervention 1 novembre 2016
29 oct. 2013 à 08:06
Les espaces n'ont eu aucun effet, et le résultat est toujours le même. Mais sachez que j'essaie de supprimer au moins une cinquantaine d'enregistrement. Cela n'aurait-il pas de conséquence direct sur la requête? Merci à tous
0
khalidev Messages postés 5 Date d'inscription vendredi 1 novembre 2013 Statut Membre Dernière intervention 1 novembre 2013 1
1 nov. 2013 à 22:00
essaye d'utiliser delete from nomtable where ...
et d'enlever les [] sur les noms des champs
0
Rejoignez-nous