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 :

pb UPDATE et IF(,,)


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 116
    Par défaut pb UPDATE et IF(,,)
    hello tous,

    voilà ma requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE orders_products SET date_first_dl=IF(tracks_is_dl<>'yes', 
    '11-11-1111', '01-01-1991'), tracks_is_dl='yes' 
    WHERE orders_products_id='510'
    à la suite de ça, "tracks_is_dl" est bien changé, mais pas "date_first_dl" qui reste à '00-00-0000'...

    Pourquoi ?

    2e question : je ne voudrait updater l'un les champ que si une condition est vérifiée.
    Par ex, dans la requete précédente, je voudrais mettre toujours "tracks_is_dl" à 'yes', mais ne modifier "date_first_dl" QUE SI "tracks_is_dl" est à 'no' (avant d'etre mis à yes bien sur)

    Je sais aps si je m'exprime bien. Une sorte de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE orders_products SET IF(tracks_is_dl<>'yes', 
    date_first_dl='06-06-2007', **NE RIEN FAIRE**), tracks_is_dl='yes' 
    WHERE orders_products_id='510'
    Bien sur ça marche pas ce genre de truc.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 116
    Par défaut

  3. #3
    Membre éprouvé
    Inscrit en
    Mai 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mai 2006
    Messages : 139
    Par défaut
    En ce qui concerne ta première question, 01-01-1991 n'est pas une date SQL reconnue : il faut que tu insères sous la forme AAAA-MM-DD, donc 1991-01-01. Si MySQL rencontre une date non reconnue, il met 0000-00-00.

    Pour ta deuxième question, ça devrait fonctionner comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    UPDATE orders_products
    SET date_first_dl = IF (tracks_is_dl <> 'yes', '2007-05-09', date_first_dl),
    tracks_is_dl = 'yes'
    WHERE orders_products_id = 510;

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 116
    Par défaut
    Citation Envoyé par gk14fire
    En ce qui concerne ta première question, 01-01-1991 n'est pas une date SQL reconnue : il faut que tu insères sous la forme AAAA-MM-DD, donc 1991-01-01. Si MySQL rencontre une date non reconnue, il met 0000-00-00.

    Pour ta deuxième question, ça devrait fonctionner comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    UPDATE orders_products
    SET date_first_dl = IF (tracks_is_dl <> 'yes', '2007-05-09', date_first_dl),
    tracks_is_dl = 'yes'
    WHERE orders_products_id = 510;
    ah bah voila tout s'explique j'ai inversé la date
    merci

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

Discussions similaires

  1. Requête update à partir d'une autre table
    Par amiral thrawn dans le forum Langage SQL
    Réponses: 5
    Dernier message: 15/02/2024, 11h40
  2. Pb d'update dans une DataGrid
    Par bidson dans le forum XMLRAD
    Réponses: 11
    Dernier message: 27/05/2003, 14h11
  3. [dBase]il y a mieux que la commande sql UPDATE ?
    Par sana72 dans le forum Autres SGBD
    Réponses: 4
    Dernier message: 12/12/2002, 11h59
  4. Réponses: 3
    Dernier message: 10/11/2002, 11h03
  5. update et virgule
    Par Delph dans le forum Bases de données
    Réponses: 8
    Dernier message: 27/08/2002, 14h40

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