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

Requêtes MySQL Discussion :

Problème avec requête de type Replace


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 6
    Par défaut Problème avec requête de type Replace
    Bonjour, j'ai un petit probleme en sql

    je dois effectué un replace mais seulement si certaines valeurs sont vérifiées

    j'ai essayé ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    REPLACE INTO table
    SET	
    Name = NewName,
    LanguageID = NewLanguageID
    WHERE 
    Name = OldName
    AND LanguageID = OldLanguageID
    mais le replace a pas l'air d'apprecier le where(erreur au niveau du "WHERE"). j'ai essuite essayé ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    REPLACE INTO dico
    (select Name, LangageID from dico where Name = OdlName and LangageID = OldLangageID )
    SET Name = NewName, LangageID = NewLangageID
    mais il me sort que j'ai une erreur au niveau du "SET" (c'est pareil si je mets "VALUES")

    un pti coup de pouce s'il vous plait ^^
    merci

  2. #2
    Membre éclairé
    Inscrit en
    Mai 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2007
    Messages : 262
    Par défaut
    Juste un test mais essaie de voir si ca marche quand tu lui mets :

    Where champ=valeur AND champ2=valeur2

    Juste mettre un AND et pas une ','

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 6
    Par défaut
    je l'avais essayé mais il n'aime toujours pas. l'erreur arrive avant

    (mais cela dit je vais corriger ça tout de suite )

  4. #4
    Membre émérite Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Par défaut
    Attention l'instruction REPLACE s'utilise comme un INSERT.

    Si la requête se trouve dans l'impossibilité d'ajouter l'enregistrement suite à cause de l'unicité des données alors les données déjà présentes sont supprimés et remplacer par les nouvelles.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 6
    Par défaut
    eh bien en fait, le lui demande de remplacer des valeur par de nouvelles. mais au lieu de cela, il m'en crée de nouvelle T_T

    si vous avez une nouvelle piste je suis prenneur

  6. #6
    Membre émérite Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Par défaut
    Si tu veux mettre à jour des données, tu peux utiliser UPDATE.
    Si tu veux insérer des données mais ne pas effacer les anciennes tu peux utiliser INSERT ... ON DUPLICATE KEY

    Typiquement, j'utilise :
    • REPLACE pour mettre à jour des données utilisateurs ( vote, etc.. ) sans avoir à me soucier de l'éventuelle présence de données similaires
    • INSERT ... ON DUPLICATE KEY pour mettre à jour des compteurs journaliers. De cette façon, si le "compteur" existe on update, sinon on le créé

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 6
    Par défaut
    en fait je viens de voir pourquoi le REPLACE est inadapté a mon cas : les champs que j'ai essayé de modifier sont des primary key.

Discussions similaires

  1. [HSQLDB]Problèmes avec requête
    Par Baptiste Wicht dans le forum JDBC
    Réponses: 7
    Dernier message: 06/06/2006, 22h28
  2. Problèmes avec Requêtes d'extraction
    Par NoBru dans le forum Access
    Réponses: 3
    Dernier message: 03/06/2006, 15h25
  3. Problème avec requête ajout
    Par teffal dans le forum Access
    Réponses: 3
    Dernier message: 29/04/2006, 16h41
  4. Problème avec requête ajout
    Par mitnick32 dans le forum Access
    Réponses: 1
    Dernier message: 02/02/2006, 18h02
  5. [VB6] Problème avec requête Update
    Par bb62 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 02/02/2006, 03h40

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