UPDATE sous C#

Résolu
cs_warzet Messages postés 99 Date d'inscription jeudi 17 janvier 2008 Statut Membre Dernière intervention 25 juillet 2013 - 13 juin 2012 à 11:37
cs_warzet Messages postés 99 Date d'inscription jeudi 17 janvier 2008 Statut Membre Dernière intervention 25 juillet 2013 - 15 juin 2012 à 10:24
Bonjour à tous je sollicite votre aide pour dire si quelqu'un voit l'erreur dans cette instruction. C'est C# 2008 et la base de données est Access 2003.
Merci pour votre aide.
[ private void Click_Modifier(object sender, EventArgs e)
{
//Declaration d'une boite de dialogue "YesNo"
//Si l'utilisateur confirme la Modification on exécute la requette
if (MessageBox.Show("Êtes-vous sûr de vouloir Modifier" + "\n" +
"cet enregistrement?", "Modification...", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)

try
{

OleDbCommand Comd = new OleDbCommand("UPDATE [Notations] SET code_personnel=?, code_eleve=?, classe=?, matiere=?, type_evaluation=?, note=?, dateevaluation=?, trimestre=?, annee=? WHERE ID like '" + txtID.Text + "'");
Comd.Parameters.Add(new OleDbParameter("code_personnel", System.Data.OleDb.OleDbType.VarChar, 50,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, txtCodePersonnel.Text));
Comd.Parameters.Add(new OleDbParameter("code_eleve", System.Data.OleDb.OleDbType.VarChar, 50,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, txtCodeEleve.Text));
Comd.Parameters.Add(new OleDbParameter("classe", System.Data.OleDb.OleDbType.VarChar, 50,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, cboClasse.Text));
Comd.Parameters.Add(new OleDbParameter("matiere", System.Data.OleDb.OleDbType.VarChar, 50,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, cboMatiere.Text));
Comd.Parameters.Add(new OleDbParameter("type_evaluation", System.Data.OleDb.OleDbType.VarChar, 50,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, cboTypeEvaluation.Text));
Comd.Parameters.Add(new OleDbParameter("note", System.Data.OleDb.OleDbType.Integer,7,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, txtNote.Text));
Comd.Parameters.Add(new OleDbParameter("dateevaluation", System.Data.OleDb.OleDbType.VarChar, 50,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, txtDateNote.Text));
Comd.Parameters.Add(new OleDbParameter("trimestre", System.Data.OleDb.OleDbType.VarChar, 50,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, cboTrimestre.Text));
Comd.Parameters.Add(new OleDbParameter("annee", System.Data.OleDb.OleDbType.VarChar, 50,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, txtAnnee.Text));

//Declaration de ma connexion
OleDbConnection Conex = new OleDbConnection(strConex);
//Initialisation de la connexion
Comd.Connection = Conex;
//Ouverture de la connexion
Conex.Open();
//Execution de la commande
Comd.ExecuteNonQuery();
//Fermeture de la connexion
Comd.Connection.Close();

//Message de confirmation à l'utilisateur
MessageBox.Show("Les Données de l'Elève" + "\n" +
txtNomEleve.Text + " " + txtPrenomEleve.Text + "\n" +
"ont été mises à jour avec succès", "Modification", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (Exception ex)//(FileNotFoundException ex)
{
//MessageBox.Show("Vous n'avez sélectionné aucun Etudiant", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
MessageBox.Show(ex.Message, "Erreur");
//ShowOleDbException();
}
//Fermeture de la connexion
//Comd.Connection.Close();

}]/quote

3 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
13 juin 2012 à 13:38
si quelqu'un voit l'erreur dans cette instruction

Quelle erreur ?
Quelle instruction ?

Il manque pas du détail dans ta question?


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
3
DevLama Messages postés 356 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 18 novembre 2021 10
13 juin 2012 à 16:01
Salut,Regard Bien ta chaîne,il devait finir avec une Entre quotte de fermeture

OleDbCommand Comd = new OleDbCommand("UPDATE [Notations] SET code_personnel=?, code_eleve=?, classe=?, matiere=?, type_evaluation=?, note=?, dateevaluation=?, trimestre=?, annee=? WHERE ID like '" + txtID.Text + "')";

La Science est Grande et Vaste partageons cette connaisance
3
cs_warzet Messages postés 99 Date d'inscription jeudi 17 janvier 2008 Statut Membre Dernière intervention 25 juillet 2013 1
15 juin 2012 à 10:24
Merci à vous okasa mais je crois avoir trouvé, sans grande conviction, mais ça marche depuis que j'ai remplacé le champ note dans
[OleDbCommand Comd = new OleDbCommand("UPDATE [Notations] SET code_personnel=?, code_eleve=?, classe=?, matiere=?, type_evaluation=?, note=?, dateevaluation=?, trimestre=?, annee=? WHERE ID like '" + txtID.Text + "'"); ]
par note_obtenue dans
[/OleDbCommand Comd = new OleDbCommand("UPDATE [Notations] SET code_personnel=?, code_eleve=?, classe=?, matiere=?, type_evaluation=?, note_obtenue=?, dateevaluation=?, trimestre=?, annee=? WHERE ID like '" + txtID.Text + "'"); ]
Et remplacé le même champ dans
[Comd.Parameters.Add(new OleDbParameter("note", System.Data.OleDb.OleDbType.Integer,7,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, txtNote.Text)); ] par
[Comd.Parameters.Add(new OleDbParameter("note_obtenue", System.Data.OleDb.OleDbType.Integer,7,
ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, txtNote.Text)); ]
Aussi je souhaiterais savoir si le mot note ferait partie d'une liste de mots réservés?
Merci à tous
3
Rejoignez-nous