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

PL/SQL Oracle Discussion :

Format de date non valide


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 14
    Par défaut Format de date non valide
    Bonjour,

    Je reçois des données qui proviennent de marchés financiers, donc en grand nombres. Je récupère plusieurs informations dont des dates sous le format AAAA-MM-JJ or dans Pl/SQL le format de DATE est JJ/MM/AA.

    Est ce que vous savez comment je pourrais récupérer mes dates au format AAAA-MM-JJ?

    Merci

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    il suffit juste de faire un alter session :
    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
     
    SQL> select sysdate from dual;
     
    SYSDATE
    ---------
    28-OCT-08
     
    SQL> alter session set nls_date_format='YYYY-MM-DD';
     
    Session altered.
     
    SQL> select sysdate from dual;
     
    SYSDATE
    ----------
    2008-10-28
    c'est le client qui change de format

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 14
    Par défaut
    Merci beaucoup Orafrance.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 14
    Par défaut
    hu hu hu, me revoila..

    J'ai bouclé le sujet trop tôt, sans tester, petit malin que je suis.

    J'ai fait la commande indiquée sous PL/SQL, je me retrouve toujours avec mes dates au format 29/10/2008 12:13:47

    Une idée Doc?

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 77
    Par défaut
    Comment récupères-tu ces données? via des tables?
    Si c'est dans des tables, le champ source est-il défini comme date ou varchar2?

    si ta source est définie comme une chaîne de caractère, tu devras faire une transformation dans le format que tu désires. Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    to_date(ta_date,'DD/MM/YYYY hh:mi:ss')

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 14
    Par défaut
    j'ai cette table:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    create table SG_MSG_FIX_OUT (
    MSG_ID number(6),
    MARKET_MSG_ID varchar2(20),
    MSG_SEQ_NB number(4),
    MARKET_ID varchar2(10),
    CONTRACT varchar2(4) NULL,
    MEMBER_ID varchar2(10),
    MSG_DATE DATE,
    GATEWAY_NAME varchar2(10),
    MSG varchar2(1000));
    j'insère dans cette table des données du type

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    insert into SG_MSG_FIX_OUT 
    (MSG_ID,MARKET_MSG_ID,MSG_SEQ_NB,MARKET_ID,MEMBER_ID,MSG_DATE,GATEWAY_NAME,MSG)
    values (73153,'20081027A0000000008',3,'MONEP-990','MONEP',2008-10-27,'MONEP-990','8=FIX.4.4\x019=352\x0135=AE\');
    ca ne fonctionne pas.
    j'ai donc essayé de remplacer comme ceci (en gras) mais rien n'y fait, j'ai toujours les dates en JJ/MM/AA.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    insert into SG_MSG_FIX_OUT 
    (MSG_ID,MARKET_MSG_ID,MSG_SEQ_NB,MARKET_ID,MEMBER_ID,MSG_DATE,GATEWAY_NAME,MSG)
    values (73153,'20081027A0000000008',3,'MONEP-990','MONEP',to_date('2008-10-27', 'YYYY-MM-DD'),'MONEP-990','8=FIX.4.4\x019=352\x0135=AE\');
    pour la méthode ALTER session SET nls_date_format='YYYY-MM-DD'; je ne peux pas le faire en fait car je n'ai pas les droits suffisants pour modifier DATE

  7. #7
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    Citation Envoyé par nbinot Voir le message
    je me retrouve toujours avec mes dates au format 29/10/2008 12:13:47
    Dans la table c'est une DATE point, il n'y a pas de format. C'est donc au moment du SELECT que tu dois appliquer le formatage. C'est où ton problème de format ?

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 14
    Par défaut
    Citation Envoyé par orafrance Voir le message
    C'est donc au moment du SELECT que tu dois appliquer le formatage.
    je fais ca comment?

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

Discussions similaires

  1. JXL : format de fichier non valide
    Par burhud dans le forum Documents
    Réponses: 6
    Dernier message: 17/11/2011, 14h18
  2. [AC-2007] Modification de format de date non souhaitée
    Par papimcha dans le forum Access
    Réponses: 10
    Dernier message: 03/05/2010, 14h16
  3. Réponses: 1
    Dernier message: 29/04/2010, 09h31
  4. date non valide + liste déroulante
    Par bigboy dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 28/10/2009, 21h54
  5. [VB.Net] cast du type 'DataRowview' en type 'Date' non valide
    Par badnane2 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 14/06/2006, 15h50

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