IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

MS Serveur 2005, probleme sur un update


Sujet :

MS SQL Server

  1. #1
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 114
    Points : 65
    Points
    65
    Par défaut MS Serveur 2005, probleme sur un update
    Bonjour,

    J'essaie de faire un update sur ma table, ma table comprend:
    contactId
    nom
    telephoneH
    cell
    email
    voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    public void changeMycontact(string name, string phoneH, string cellp, string email, int numeroC)
            {
                //commande d'insertion des employes.
                SqlCommand addContact = new SqlCommand(
                    "update Tablec set nom= @name, telephoneH = @phoneH, cell=@cellp, email= @email  where contactId = @numeroC ", cx_connexion);
     
                addContact.Parameters.AddWithValue("@nom", name);
                addContact.Parameters.AddWithValue("@telephoneH", phoneH);
                addContact.Parameters.AddWithValue("@cell", cellp);
                addContact.Parameters.AddWithValue("@email", email);
     
                //ouverture de la connexion.
                cx_connexion.Open();
     
                //execution de l'instruction sql ne retournant pas de valeur.
                addContact.ExecuteNonQuery();
     
                //fermeture de la connexion sql.
                cx_connexion.Close();
            }

    Mais j'obtiens cette erreur:
    Must declare the scalar variable "@name".
    SVP quequ'un a t'il une idée de mon erreur et comment la resoudre ?

    Merci d'avance.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 862
    Points : 53 015
    Points
    53 015
    Billets dans le blog
    6
    Par défaut
    lit cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    addContact.Parameters.AddWithValue("@nom", name);
    relit le message d'erreur :
    Must declare the scalar variable "@name".
    Conclusion :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    addContact.Parameters.AddWithValue("@name", nom);
    A +

  3. #3
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 114
    Points : 65
    Points
    65
    Par défaut MS Serveur 2005, probleme sur un update
    Je ne peux pas faire :
    addContact.Parameters.AddWithValue("@name", nom);

    car dans ma base de donnée il n'y a pas le champ "name". voici les champs de
    ma BD:
    contactId
    nom
    telephoneH
    cell
    photo
    email.

    Mais j'ai cette erreur:Must declare the scalar variable "@name".

  4. #4
    Membre émérite Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Points : 2 845
    Points
    2 845
    Par défaut
    En fait, quand tu ajoutes les paramètres avec addContact.Parameters.AddWithValue, tu ne donnes pas de nom de champs, mais des noms et valeurs de variables...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    update Tablec set nom= @name, telephoneH = @phoneH, cell=@cellp, 
    email= @email  
    where contactId = @numeroC
    => tu indiques à ton objet AddContact que tu veux substituer les @xxx par des valeurs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
                addContact.Parameters.AddWithValue("@xx", val1);
                addContact.Parameters.AddWithValue("@xxx", val2);
                addContact.Parameters.AddWithValue("@xxxx", val3);
                addContact.Parameters.AddWithValue("@xxxxx", val4);
    => tu indiques à ton objet AddContact que tu vas subtituer les occurences de @xxx dans la SqlCommand par val1, val2, ...

    DONC : au moment ou ta requête s'exécute, tu n'auras plus de @xxx, ni de val1, mais juste les véritables valeurs genre "Marcel", "0888888888", ...

    EDIT : Effectivement, tu ne peux pas faire ...AddWithValue(@Name, nom), car la variable "nom" n'a pas l'air d'exister pas dans ton programme
    (dans les arguments de ta fonction, il y a un 'name')

  5. #5
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 114
    Points : 65
    Points
    65
    Par défaut MS Serveur 2005, probleme sur un update
    Merci ca fonctionne.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SQL Serveur 2005] Requête sur un champ de type XML
    Par Cyrilange dans le forum Développement
    Réponses: 3
    Dernier message: 23/06/2008, 07h15
  2. [HQL] probleme sur requete Update
    Par __Ez__ dans le forum Hibernate
    Réponses: 2
    Dernier message: 29/04/2008, 11h12
  3. Probleme sur le update
    Par JoloKossovar dans le forum Hibernate
    Réponses: 3
    Dernier message: 02/02/2008, 13h27
  4. Réponses: 2
    Dernier message: 22/01/2008, 21h39
  5. [ASP.net][GridView] Probleme sur un update
    Par jeromechezgdf dans le forum ASP.NET
    Réponses: 6
    Dernier message: 31/05/2007, 17h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo