Bouton pour UPDATE avec ACCESS

cs_Lemonhead33 Messages postés 3 Date d'inscription jeudi 29 octobre 2009 Statut Membre Dernière intervention 14 mai 2010 - 26 mars 2010 à 21:00
yohan49 Messages postés 380 Date d'inscription samedi 22 janvier 2005 Statut Membre Dernière intervention 13 août 2011 - 28 mars 2010 à 19:08
Bonjour à tous.

Je créé une application qui me permet de sauver dans une bd access les dates et prochains épisodes de quelques séries dont je suis la diffusion US.

Sauf que mon bouton de sauvegarde me gère une exception qui, à l'origine, ne me générait pas...

Voici mon code :

string query "UPDATE series SET saison @saison, prochain_ep =@prochain_ep, date_ep =@date, saison_a_voir =@saison_a_voir, ep_a_voir =@ep_a_voir WHERE titre = @titre";
            OleDbConnection thisConnection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Romain\Mes documents\Series.mdb");
            thisConnection.Open();
            OleDbCommand thisCommand = new OleDbCommand(query, thisConnection);
            thisCommand.Parameters.AddWithValue("@saison", txtSaison1.Text);
            thisCommand.Parameters.AddWithValue("@prochain_ep", txtEp1.Text);
            thisCommand.Parameters.AddWithValue("@date", txtDate.Text);
            thisCommand.Parameters.AddWithValue("@saison_a_voir", txtSaison2.Text);
            thisCommand.Parameters.AddWithValue("@ep_a_voir", txtEp2.Text);
            thisCommand.Parameters.AddWithValue("@titre", cbxList.Text);
            try
            { 
                thisCommand.ExecuteNonQuery();
                MessageBox.Show("Sauvegarde effectuée !");
            }
            catch (OleDbException ode)
            {
                MessageBox.Show("Sauvegarde échouée : "+ode.ToString());
            }
            
            thisConnection.Close(); 


Voici l'exception qu'il me génère (j'ai fait un screen car c'est assez long): http://img709.imageshack.us/img709/6932/screenzy.png

J'ai parcouru ce forum et j'ai vu quelques solutions qui n'ont malheureusement pas marché...
La valeur null et les chaines de caractères vides sont autorisés partout sauf pour le titre.

J'espère que quelqu'un pourra m'aider, merci d'avance.

4 réponses

cs_Lemonhead33 Messages postés 3 Date d'inscription jeudi 29 octobre 2009 Statut Membre Dernière intervention 14 mai 2010
26 mars 2010 à 21:25
Désolé pour le double post, j'ai oublié de préciser que l'exception s'affiche que lorsque certains champs sont vides, ce qui ne se produisait pas avant...
0
yohan49 Messages postés 380 Date d'inscription samedi 22 janvier 2005 Statut Membre Dernière intervention 13 août 2011 7
26 mars 2010 à 22:28
tu peux nous coller la structure de ta table series ??

tu n'aaurais pas DateTime en type sur le champ ??
0
cs_Lemonhead33 Messages postés 3 Date d'inscription jeudi 29 octobre 2009 Statut Membre Dernière intervention 14 mai 2010
28 mars 2010 à 19:02
http://img690.imageshack.us/img690/4418/sanstitrefg.jpg

La voici.

Et non je n'ai pas de DataTime, pour la date de l'épisode j'ai préféré mettre un string pour moins me compliquer la tâche.
0
yohan49 Messages postés 380 Date d'inscription samedi 22 janvier 2005 Statut Membre Dernière intervention 13 août 2011 7
28 mars 2010 à 19:08
salut tu a des champs numerique
donc essais de faire ca sur chaque champs :

int valeur = 0;

if(int.TryParse(txtSaison1.Text, out valeur))
   thisCommand.Parameters.AddWithValue("@saison", valeur);

valeur = 0;
if(int.TryParse(txtEp1.Text, out valeur))
   thisCommand.Parameters.AddWithValue("@prochain_ep", valeur);


ect ...

:)
0
Rejoignez-nous