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

Langage SQL Discussion :

Pb de mise à jour d'une date


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 19
    Points : 13
    Points
    13
    Par défaut Pb de mise à jour d'une date
    Bonjour,
    J'essaie de mettre à jour une date dans une BDD Oracle, je pensais que la requête suffirait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     update LST_FCT_INST
     set LFI_DATE_LAST_CONTROLE = to_date('2004.09.02','DD.MM.YYYY')
     where INS_ID = 53156
     and FCT_ID = 4;
    Mais cela me génère une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ERREUR à la ligne 2:
    ORA-01861: le littéral ne concorde pas avec le format chaîne de caractères
    Alors j'ai essayé d'enlever le caractère qui semble poser problème donc j'ai exécuté la requête suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     update LST_FCT_INST
     set LFI_DATE_LAST_CONTROLE = to_date(2004.09.02,'DD.MM.YYYY')
     where INS_ID = 53156
     and FCT_ID = 4;
    Et cette fois ci il me génère cette erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     set LFI_DATE_LAST_CONTROLE = to_date(2004.09.02,'DD.MM.YYYY')
                                                 *
    ERREUR à la ligne 2:
    ORA-00907: Parenthèse de droite absente
    Je ne comprend pas car il me semble avoir déjà mis des champs date à jour de cette façon !!

  2. #2
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Points : 2 227
    Points
    2 227
    Par défaut
    Essaye avec / à la place du . dans la date et le format
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    to_date('2004/09/02','DD/MM/YYYY')

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 19
    Points : 13
    Points
    13
    Par défaut
    J'ai toujours le même message d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ERREUR à la ligne 2:
    ORA-01861: le littéral ne concorde pas avec le format chaîne de caractères
    J'ai également essayé de mettre des guillemets autour de la date mais cela ne fonctionne pas non plus !!

    Je ne coomprend vraiment pas c'est bizarre !!

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 19
    Points : 13
    Points
    13
    Par défaut
    Ce qui est étonnant c'est qu'à un moment j'exécute cette requête :

    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
    update COLIS 
    set CLS_DDE_CLIENT='OUI', 
    CLS_FICHE_DDE='NON', 
    CLS_REALISABLE='NON', 
    CLS_COMMANDE='NON', 
    CLS_PLAN_QLT='NON', 
    CLS_CONFORME='OUI', 
    CLS_ETAT='OUI', 
    CLS_ACCESSOIRES='OUI', 
    CLS_RESULT_RECEPT='OUI', 
    CLS_ACTION=NULL, 
    CLS_ACT_CORRECT=NULL, 
    CLS_DT_RESOLUTION=NULL, 
    PRS_ID_CTRLEUR='2', 
    CLS_DT_RECEPT='02.09.2004', 
    CLS_DT_DEPOT_LABO= To_date('02.09.2004','DD.MM.YYYY' ), 
    CLS_TIME_DEPOT_LABO= To_date('09:26','HH24:MI' ), 
    CLS_DT_DELAIS='17.09.2004', 
    PRS_ID_CRECTEUR=NULL
    Et elle fonctionne !!!

    Etrange !!

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 19
    Points : 13
    Points
    13
    Par défaut
    J'ai trouvé en fait j'exécute ma requête tout simplement en enlevant le to_date :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     update LST_FCT_INST 
     set LFI_DATE_LAST_CONTROLE = '2004.09.02'
     where INS_ID = 53156 
     and FCT_ID = 4;
    Et ça fonctionne !!
    Merci de votre aide à bientôt.

  6. #6
    rsc
    rsc est déconnecté
    Membre éprouvé
    Avatar de rsc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 711
    Points : 918
    Points
    918
    Par défaut Re: Pb de mise à jour d'une date
    Tu as contourné le problème, c'est bien, mais à toutes fins utiles, l'erreur venait tout bêtement de ce qu'il fallait écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      to_date('02.09.2004','DD.MM.YYYY')
    au lieu de :
    Citation Envoyé par valerie90
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      to_date('2004.09.02','DD.MM.YYYY')
    Commme l'indique la chaîne de format.

    Roland

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2004
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 19
    Points : 13
    Points
    13
    Par défaut
    En effet ça me paraît beaucoup plus logique. Merci pour ton aide !!

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

Discussions similaires

  1. [AC-2003] Mise à jour d'une date dans une table en fonction d'un critère
    Par carlostropico dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 09/12/2009, 18h07
  2. Mise à jour d'une date dans MySQL
    Par champijulie dans le forum JDBC
    Réponses: 6
    Dernier message: 07/02/2007, 17h02
  3. Réponses: 7
    Dernier message: 27/12/2006, 17h54
  4. [MySQL] mise à jour d'une date dans une table
    Par jophp dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 25/10/2006, 20h48
  5. Réponses: 4
    Dernier message: 25/04/2006, 19h41

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