|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Requete parametrée Update [ Base de données / SQL Server ] (yahou29)
Informations & options pour cette discussion
|
mardi 6 mai 2008 à 09:18:46 |
Requete parametrée Update

yahou29
|
Bonjour à tous, j'ai encore besoin d'aide svp. Voici 2 requetes paramétrées, la première fonctionne très bien et pas la deuxième. Pourtant ce sont les mêmes.... Merci pour vos suggestions . // Update if(eleve){ // Création de la commandeSqlCommand cmdUpEl = new SqlCommand("update ELEVE set ELV_NUM = @ELV_NUM , CLS_CI = @CLS_CI , ELV_NOM = @ELV_NOM , ELV_PRN = @ELV_PRN , ELV_GENRE = @ELV_GENRE , ELV_DNAIS = @ELV_DNAIS , ELV_DENTR = @ELV_DENTR where ELV_NUM = ' " + lstNom.SelectedValue + " ' ",sqlConnection1);// Ajout des paramètrescmdUpEl.Parameters.Add("@ELV_NUM",SqlDbType.SmallInt); cmdUpEl.Parameters.Add("@CLS_CI",SqlDbType.VarChar); cmdUpEl.Parameters.Add("@ELV_NOM",SqlDbType.VarChar); cmdUpEl.Parameters.Add("@ELV_PRN",SqlDbType.VarChar); cmdUpEl.Parameters.Add("@ELV_GENRE",SqlDbType.VarChar); cmdUpEl.Parameters.Add("@ELV_DNAIS",SqlDbType.DateTime); cmdUpEl.Parameters.Add("@ELV_DENTR",SqlDbType.DateTime); cmdUpEl.Parameters["@ELV_NUM"].Value = textBoxModifId.Text; cmdUpEl.Parameters["@CLS_CI"].Value = textBoxModifClasse.Text; cmdUpEl.Parameters["@ELV_NOM"].Value = textBoxModifNom.Text; cmdUpEl.Parameters["@ELV_PRN"].Value = textBoxModifPrenom.Text; cmdUpEl.Parameters["@ELV_GENRE"].Value = textBoxModifGenre.Text; cmdUpEl.Parameters["@ELV_DNAIS"].Value = textBoxModifDateNais.Text; cmdUpEl.Parameters["@ELV_DENTR"].Value = textBoxModifDateEntr.Text; // Création du DataAdaptater et du DataSetSqlDataAdapter dacmdUpEl; DataSet dscmdUpEl; dacmdUpEl = new SqlDataAdapter(cmdUpEl);dscmdUpEl = new DataSet();// Traitementtry{ // Ouverture de la connexionsqlConnection1.Open(); // Execution de la commandecmdUpEl.ExecuteNonQuery(); // Fermeture de la connexionsqlConnection1.Close(); } catch(Exception ex){ MessageBox.Show(ex.Message); } //Actualisation de la liste lstNomdsEleve1.Clear(); sqldaEleve.Fill(dsEleve1); lstNom.DataSource = dsEleve1.ELEVE; lstNom.DisplayMember = "ELV_NOM"; lstNom.ValueMember = "ELV_NUM"; } if(professeur){ // Création de la commandeSqlCommand cmdUpProf = new SqlCommand("update PROFESSEUR set PRF_CI = @PRF_CI , PRF_NOM = @PRF_NOM , PRF_PRN = @PRF_PRN , PRF_GENRE = @PRF_GENRE , PRF_DEMB = @PRF_DEMB , PRF_DNAIS = @PRF_DNAIS where PRF_CI = ' " + lstNom.SelectedValue + " ' ",sqlConnection1);// Ajout des paramètrescmdUpProf.Parameters.Add("@PRF_CI",SqlDbType.VarChar); cmdUpProf.Parameters.Add("@PRF_NOM",SqlDbType.VarChar); cmdUpProf.Parameters.Add("@PRF_PRN",SqlDbType.VarChar); cmdUpProf.Parameters.Add("@PRF_GENRE",SqlDbType.VarChar); cmdUpProf.Parameters.Add("@PRF_DEMB",SqlDbType.DateTime); cmdUpProf.Parameters.Add("@PRF_DNAIS",SqlDbType.DateTime); cmdUpProf.Parameters["@PRF_CI"].Value = textBoxModifId.Text; cmdUpProf.Parameters["@PRF_NOM"].Value = textBoxModifNom.Text; cmdUpProf.Parameters["@PRF_PRN"].Value = textBoxModifPrenom.Text; cmdUpProf.Parameters["@PRF_GENRE"].Value = textBoxModifGenre.Text; cmdUpProf.Parameters["@PRF_DEMB"].Value = textBoxModifDateEntr.Text; cmdUpProf.Parameters["@PRF_DNAIS"].Value = textBoxModifDateNais.Text; // Création du DataAdaptater et du DataSetSqlDataAdapter dacmdUpProf; DataSet dscmdUpProf; dacmdUpProf = new SqlDataAdapter(cmdUpProf);dscmdUpProf = new DataSet();// Traitementtry{ // Ouverture de la connexionsqlConnection1.Open(); // Execution de la commandecmdUpProf.ExecuteNonQuery(); // Fermeture de la connexionsqlConnection1.Close(); } catch(Exception ex){ MessageBox.Show(ex.Message); } //Actualisation de la liste lstNomdsProfesseur1.Clear(); sqldaProfesseur.Fill(dsProfesseur1); lstNom.DataSource = dsProfesseur1.PROFESSEUR; lstNom.DisplayMember = "PRF_NOM"; lstNom.ValueMember = "PRF_CI"; }
|
|
|
|
mardi 6 mai 2008 à 09:26:32 |
Re : Requete parametrée Update

SharpMao
|
Hello,
Tu dis que la 2ème ne fonctionne pas, as-tu une erreur, ou est-ce qu'elle ne mais rien à jour dans la DB, mais sans faire d'exception ?
Ensuite, encore une petite remarque. Tu peux encore améliorer l'utilisation des requêtes paramétrées en y mettant aussi la clause where.
Amicalement, SharpMao
"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!" (Coluche / 1944-1986 / Pensées et anecdotes)
|
|
|
|
mardi 6 mai 2008 à 09:30:05 |
Re : Requete parametrée Update

yahou29
|
Merci .
La 2e requete ne fait rien du tout , si j'ajoute un "e" a un nom, en cliquant sur mon bouton update, cela enleve le "e". Et aucun message d'erreur.
Etant bloqué, je vais etudier la clause where pour les requetes parametrées, merci pour le conseil.
|
|
|
|
mardi 6 mai 2008 à 09:44:52 |
Re : Requete parametrée Update

SharpMao
|
Re, Ca n'a peut-être aucun rapport, mais tu n'es pas obligé de faire un DataAdapter et un DAtaSet pour un update using (sqlConnection1){ sqlConnection1.Open(); cmdUpProf.Connection = sqlConnection1; cmd.ExecuteNonQuery(); }Amicalement, SharpMao "C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!" (Coluche / 1944-1986 / Pensées et anecdotes)
|
|
|
|
mardi 6 mai 2008 à 10:13:31 |
Re : Requete parametrée Update

yahou29
|
re, en effet ce n'est pas obligatoire. j'ai tenté : dacmdUpProf.Update(dscmdUpProf); dscmdUpProf.AcceptChanges();
mais toujours pareil.
Merci
|
|
|
|
mardi 6 mai 2008 à 10:43:17 |
Re : Requete parametrée Update

SharpMao
|
Oui, mais as-tu tenté les cinq lignes que je t'ai donné ? (En corrigeant la petite erreur cmdUpProf.ExecuteNonQuery();)
Amicalement, SharpMao
"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!" (Coluche / 1944-1986 / Pensées et anecdotes)
|
|
|
|
mardi 6 mai 2008 à 10:45:29 |
Re : Requete parametrée Update

yahou29
|
oui, j'ai tenté, j'ai un problème d'initialisation de connectionstring
|
|
|
|
mardi 6 mai 2008 à 12:13:22 |
Re : Requete parametrée Update

yahou29
|
Problème Resolu, j'ai changé de méthode. Mon problème d'affichage est resolu par : lstNom.SelectedValue = 0; puis par un raffraichissement du dataset. Dernière question qui est plutot du SQL : Peut on modifier une clé primaire ? du genre : si j'ai une prof qui se marie , donc change de nom, son identifiant qui est "AR" devient "AD" SharpMao, merci pour ton aide. voici le code : // Updateif(eleve){ // Traitementtry{ // Ouverture de la connexionsqlConnection1.Open(); // Execution de la commandelstNom.SelectedValue= 0; sqldaEleve.Update(dsEleve1); // Fermeture de la connexionsqlConnection1.Close(); } catch(Exception ex){ MessageBox.Show(ex.Message); } //Actualisation de la liste lstNomdsEleve1.Clear(); sqldaEleve.Fill(dsEleve1); lstNom.DataSource = dsEleve1.ELEVE; lstNom.DisplayMember = "ELV_NOM"; lstNom.ValueMember = "ELV_NUM"; } if(professeur){ // Traitementtry{ // Ouverture de la connexionsqlConnection1.Open(); // Execution de la commandelstNom.SelectedValue= 0; sqldaProfesseur.Update(dsProfesseur1); // Fermeture de la connexionsqlConnection1.Close(); } catch(Exception ex){ MessageBox.Show(ex.Message); } //Actualisation de la liste lstNomdsProfesseur1.Clear(); sqldaProfesseur.Fill(dsProfesseur1); lstNom.DataSource = dsProfesseur1.PROFESSEUR; lstNom.DisplayMember = "PRF_NOM"; lstNom.ValueMember = "PRF_CI"; }
|
|
|
Cette discussion est classé dans : add, parameters, elv, prf, cmdupel
Répondre à ce message
Sujets en rapport avec ce message
Requete INSERT en c# avec SqlServer [ par yahou29 ]
Bonjour à tous,Je suis depuis 2 jour sur un simple requete qui ne fonctionne pas...Message d'erreur :Violation de la contrainte PRIMARY KEY 'PK_ELEVE'
probleme code requête parametrée [ par zakaroh ]
bonjour, je veux réalisé une requete parametrée j'ai ecris le code suivant : private void button1_Click(object sender, EventArgs e) {
BASE DONNEE [ par valentin013 ]
Bonjour à tous, voilà mon pb.dans mon programme j'execute une procedure stokée mais elle n'enregistre pas les donne, j'utilise un fichier de base de d
List<String> vers string [ par Jay21 ]
Bonjour tout le monde,J'ai un petit soucis.Je veux envoyer un mail et je stocke les lignes de mon body dans une liste de string exemple :List mybody =
Affichage des hashtable [ par s010179 ]
Bonjour,je viens de créer un hashtable, mais lorsque je veux afficher les données dans l'ordre où je les ai entrées les clés sont mélangées. Voici un
List<> Controler les add et remove [ par Yxion ]
Salut, J'ai une une list generic et j'aimerai contrôler les add et remove, soit en dérivant ma classe soit en poussant un evenement sur
Sérialisation d'une ArrayList [ par vecchio56 ]
Bonjour,J'ai un petit problème quand j'essaie de sérialiser une ArrayList. Apparemment, les objets contenus dans la liste sont d'un type inattendu. J'
Créer une forme dans Visio à partir d'un add-in [ par crawling5 ]
Bonjour,Ca fait 2 jours que je recherche des informations sur ce sujet, mais je n'en vois aucune.J'aimerais pouvoir créer un add-in Visio (en C#) qui
comment utiliser le SDK de Visio 2003 [ par thmatew ]
Salut a tous,J'aimerai trouver un bon tutorial sur le developpement avec SDK Visio 2003, parce que je cherche depuis des jours et des jours et les exe
Recuperer nom d'utilisateur pour chaque processus [ par T103 ]
Bonsoir, Je suis sous vsexpress c#, j'essaye de faire un programme qui recupère les processus actifs du system avec la mémoire utilisé, le chemin d'ac
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|