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

Sql Developer Oracle Discussion :

Affichage des microsecondes


Sujet :

Sql Developer Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Septembre 2004
    Messages
    378
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 378
    Par défaut Affichage des microsecondes
    Bonjour,

    Il y a une table avec une colonne de type TIMESTAMP(6) dans laquelle les données sont insérées simplement par SYSTIMESTAMP.

    Or dans l'affichage de SQL Developper, il y a bien 6 chiffres dans la seconde mais les 3 derniers sont toujours à 0.
    Les paramètres d'affichage dans les préférences NLS de SQL Developper sont "DD/MM/YYYY HH24:MI:SSXFF"

    J'ai besoin d'avoir tous les 6 chiffres dans la seconde et je voudrais donc vérifier si c'est le cas.
    Pouvez-vous m'aider ?

    La version de SQL Developper est 3.1.07 et la base est 11g.

    Merci.

  2. #2
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Soit ça a été inséré comme ça (certains systèmes sont limités), soit c'est le retour de sqldev.
    Teste un dump de la colonne pour voir la précision interne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT TO_CHAR(SYSTIMESTAMP, 'DD/MM/YYYY HH24:MI:SS:FF'), DUMP(SYSTIMESTAMP), DUMP(SYSDATE), dump(colonne)
    FROM dual
     
    SYSTIMESTAMP 19/03/2012 16:48:49:246943	
    Dump_Systimestamp Typ=188 Len=20: 220,7,3,19,15,48,49,10,24,13,184,14,1,0,5,0,0,0,0,0
    Dump Sysdate Typ=13 Len=8: 220,7,3,19,16,48,49,0

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2004
    Messages
    378
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 378
    Par défaut
    voici le résultat de la requête.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    20/03/2012 09:19:37:926000	Typ=188 Len=20: 220,7,3,20,8,19,37,0,128,163,49,55,1,0,5,0,0,0,0,0	Typ=13 Len=8: 220,7,3,20,9,19,37,0	Typ=180 Len=11: 120,112,3,19,15,10,8,29,205,101,0

  4. #4
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Vérifie le desc de la table car on peut déclarer une colonne en timestamp(3)
    J'essaye de comprendre le codage des millisec du timestamp, mais il est différent du codage de la date et heure

  5. #5
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    C'est bon, j'ai trouvé : C'est codé en microseconde, en hexa

    Typ=180 Len=11: 120,112,3,19,15,10,8,29,205,101,0
    Les 7 premiers chiffres correspondent à la date (même codage que les dates et heures) : Année sur 2, mois, Jour, HH+1, MI+1, SS+1
    => 2012/03/19 14:09:07

    reste 29, 205, 101, 0
    en hexa : 1D CD 65 00
    en décimal 500000000

    A priori tu as un problème sur ton type de colonne (timestamp réduit) ou une limite lors de l'insertion

  6. #6
    Membre éclairé
    Inscrit en
    Septembre 2004
    Messages
    378
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 378
    Par défaut
    Le desc de la table retourne
    J'essaye aussi de comprendre de mon côté ;-)
    J'ai essayé sur une autre instance et SQLDeveloper me retourne bien les 6 chiffres dans la seconde.

    Il s'agirait donc plutôt d'un problème de configuration de l'instance ?

  7. #7
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Qu'est-ce que ça donne si vous exécutez votre select en tant que script (F6) ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    alter session set nls_timestamp_format = 'DD/MM/YYYY HH24:MI:SS.FF';
     
    select cast(SYSTIMESTAMP as TIMESTAMP(3))        as ts3
         , cast(SYSTIMESTAMP as TIMESTAMP(6))        as ts6
         , cast(SYSTIMESTAMP as TIMESTAMP(9))        as ts9
         , timestamp '2012-03-19 18:30:00.123456789' as tss
      from dual;
     
    TS3                           TS6                           TS9                           TSS
    ----------------------------- ----------------------------- ----------------------------- -----------------------------
    20/03/2012 10:40:00.983000000 20/03/2012 10:40:00.983107000 20/03/2012 10:40:00.983107000 19/03/2012 18:30:00.123456789

Discussions similaires

  1. Réponses: 11
    Dernier message: 16/12/2003, 19h58
  2. affichage des pièces jointe sous outllook 2000
    Par darkbm dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 29/10/2003, 11h32
  3. Réponses: 1
    Dernier message: 06/03/2003, 11h57
  4. Forcer l'affichage des dizaines...
    Par pataluc dans le forum Langage
    Réponses: 4
    Dernier message: 26/11/2002, 19h38
  5. [VB6] [Flexgrid] Format d'affichage des numériques
    Par yansolo dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 19/10/2002, 21h00

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