Bonjour à tous,
j'ai deux bases, une en Oracle 11.2 et une en Oracle 11.1.
J'ai la même structure de base de données sur les deux systèmes et j'ai des comportements différents sur les champs de type TIMESTAMP(6) WITH TIMEZONE, notamment sur les millisecondes.
Sur les deux bases, le formatage d'un champ de timezone avec 'dd/mm/yyyy HH24:MI:SS.FF9 TZR' , affiche les millisecondes.
29/06/2013 14:29:55.123456000 EUROPE/LONDON
Cependant le formatage du même champ avec 'dd/mm/rr HH24:MI:SSXFF TZR'
va afficher:
29/06/13 14:29:55 EUROPE/LONDON (sur la 11.2)
29/06/13 14:29:55,123456 EUROPE/LONDON (sur la 11.1)
Si je n'utilise aucun formatage, j'obtiens:
29/JUIN /2013 14:29:55, +01:00 (sur la 11.2)
29/JUIN /2013 14:29:55,123456 +01:00 (sur la 11.1)
J'ai utilisé les différents formatages avec SYSTIMESTAMP et je n'ai aucune différence entre les deux base, les millisecondes sont affichées.
L'affichage des millisecondes n'est donc possible que lorsqu'on utilise le formatage explicite SS.FF[1..9]. A noter que SS.FF ne renvoit pas les millisecondes alors que selon la doc oracle: "If you do not specify a digit, then Oracle Database uses the precision specified for the datetime datatype or the datatype's default precision."
Avez vous une idée ?
Merci d'avance.
Partager