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

C# Discussion :

erreur sur une requete UPDATE


Sujet :

C#

  1. #1
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 61
    Par défaut erreur sur une requete UPDATE
    bonjour,

    j'ai fait ce code pour modifier une table
    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
     
                        // Chaîne de connexion
                        string connectString = @"Data Source=xxx\SQLEXPRESS;Initial Catalog=hafid;Integrated Security=True";
     
                        // Objet connection
                        SqlConnection connection = new SqlConnection(connectString);
                        // Ouverture
                        connection.Open();
                        SqlCommand command = new SqlCommand("UPDATE [Table_test] SET toto,bobo VALUES(@toto,@bobo)  + WHERE (ville='" + ville_name + "');", connection);
     
                        command.Parameters.Add(new SqlParameter("@toto", SqlDbType.Decimal));
                        command.Parameters.Add(new SqlParameter("@bobo", SqlDbType.Decimal));
     
     
                        command.ExecuteNonQuery();
    j'ai un message d 'erreur probleme d'une ,.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Incorrect syntax near ','.
    merci

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2004
    Messages
    304
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 304
    Par défaut
    Revoie ton SQL
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "UPDATE [Table_test] SET toto = @toto, bobo = @bobo WHERE (ville='" + ville_name + "');

  3. #3
    Membre très actif
    Avatar de buggen25
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    554
    Détails du profil
    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Août 2008
    Messages : 554
    Par défaut
    salut ;
    peut etre que je me trempe, le "+" qui précede where me semble incorrect ou peut etre que sa s'ecrit avec MSSQL

  4. #4
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 61
    Par défaut
    Revoie ton SQL

    Code :

    "UPDATE [Table_test] SET toto = @toto, bobo = @bobo WHERE (ville='" + ville_name + "');
    exact ca marche ...

    j'ai un autre problème; c'est quand je saisie 12.3 il me l'arrondi a 13.

    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
     
     
    SqlCommand command = new SqlCommand("UPDATE [Table_test] SET [toto]=@toto, [bobo]= @bobo  WHERE (ID_villr='" + ville_name + "');", connection);
     
                        command.Parameters.Add(new SqlParameter("@toto", SqlDbType.Decimal));
                        command.Parameters.Add(new SqlParameter("@bobo", SqlDbType.Decimal));
     
     
                        if (textBox_toto.Text != "")
                        {
                            command.Parameters["@toto"].Value = decimal.Parse(textBox_toto.Text, System.Globalization.CultureInfo.InvariantCulture);
                        }
                        else command.Parameters["@toto"].Value = System.DBNull.Value;
     
                        if (textBox_bobo.Text != "")
                        {
                            command.Parameters["@bobo"].Value = decimal.Parse(textBox_bobo.Text, System.Globalization.CultureInfo.InvariantCulture);
                        }
                        else command.Parameters["@bobo"].Value = System.DBNull.Value;
                        command.ExecuteNonQuery();

  5. #5
    Membre émérite
    Inscrit en
    Octobre 2006
    Messages
    587
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Octobre 2006
    Messages : 587
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "UPDATE [Table_test] SET toto = @toto, bobo = @bobo WHERE (ville='" + ville_name + "');
    Il y a un truc que je saisi pas la. Tu utilise des paramètres et tu casses ta chaine de requête pour la concaténer avec la valeur d'une variable

    Pourquoi tu n'utilise pas un dernier paramètre à la place de la variable ?

    Citation Envoyé par haymen Voir le message
    j'ai un autre problème; c'est quand je saisie 12.3 il me l'arrondi a 13.
    Quand tu essaie de parser un string en decimal ?

  6. #6
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 61
    Par défaut
    j'ai fait ca parce que quand je laisse un textbox vide ne me l'accepte pas


    ma requête fonctionne..
    le seul problème que j'ai c'est que quand je saisie 12.3 il me l'arrondi a 13
    a 13

  7. #7
    Membre très actif Avatar de fally
    Homme Profil pro
    Développeur .Net / BI
    Inscrit en
    Novembre 2007
    Messages
    966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur .Net / BI

    Informations forums :
    Inscription : Novembre 2007
    Messages : 966
    Par défaut
    harz62 essayait de te dire au lieu de faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "...WHERE (ID_villr='" + ville_name + "');"
    tu ferais mieux d'utiliser un SqlParameter comme tu l'as fait pour les autres
    Pour ce qui est de
    le seul problème que j'ai c'est que quand je saisie 12.3 il me l'arrondi a 13
    a 13
    tu as été on ne peut plus clair

Discussions similaires

  1. [AC-2000] Erreur 3073 sur une requete UPDATE
    Par Miss Ti dans le forum VBA Access
    Réponses: 4
    Dernier message: 23/09/2011, 14h30
  2. Erreur de syntaxe sur une Requete Update
    Par samtheh dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 01/06/2007, 13h07
  3. erreur sur une requete avec param curentuser
    Par laurent.w dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 17/01/2007, 13h39
  4. [MySQL] Erreur sur une instruction UPDATE
    Par Sir Tengu dans le forum Langage SQL
    Réponses: 3
    Dernier message: 24/12/2006, 13h59
  5. INNER JOIN sur une requete UPDATE
    Par Immobilis dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 06/03/2006, 14h05

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