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

Oracle Discussion :

format de date sous ubuntu


Sujet :

Oracle

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 206
    Points : 81
    Points
    81
    Par défaut format de date sous ubuntu
    Bonsoir,

    J'ai une application php + oracle 9i.
    Lorsque je fais une requete sous php sur une colonne de type date, j'ai 2 formats différents en fonction de la machine où j'ai installé l'application php qui attaque toujours la même base de données.

    Sur une machine Red HAT j'ai un format de date du type yyyy-mm-dd, alors que sur une machine nouvellement installée ubuntu 6.10, le format de date est dd-NOV-06, hallucinant.

    Comment modifier ce format sans toucher à la requete et faire to_char(ma_date,'DD/MM/YYYY'). Je ne peux pas me permettre ca car nous avons implémenté une fonction PHP qui converti yyyy-mm-dd en dd/mm/yyyy.

    Merci d'avance

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Peut être en utilisant ALTER SESSION

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alter session set nls_date_format='dd-mm-yyyy';

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 206
    Points : 81
    Points
    81
    Par défaut alter session
    On utilise déjà le alter session nls_date..., mais ce n'est utile que lorsqu'on veut inserer une date en base, pas au moment du select.

    Vous confirmez?

  4. #4
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    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
    20
    21
    22
    23
    24
    25
    SQL> create table TTEST(LADATE DATE);
     
    Table créée.
     
    SQL> INSERT INTO TTEST VALUES (SYSDATE);
     
    1 ligne créée.
     
    SQL> select * from TTEST;
     
    LADATE
    --------
    12/11/06
     
    SQL> alter session set nls_date_format='mm-dd-yyyy';
     
    Session modifiée.
     
    SQL> select * from TTEST;
     
    LADATE
    ----------
    11-12-2006
     
    SQL>

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 206
    Points : 81
    Points
    81
    Par défaut alter session
    Alors là je ne comprends pas /plus,
    car à chaque fois que je me connecte à ma base de donnée oracle 9i installée sous win 2000 que ce soit sur la redhat ou sur la ubuntu, je fais exactement ça, j'alter la session pour les date et les format numeric (toujours avec mon appli php)
    Et je fait un alter avec le format de date suivant : yyyy-mm-dd. Donc la red hat est sage, elle fait ce qu'on lui dit. Alors c'est la ubuntu qui prend des libertés où il y'a des parametres d'environnement a parametrer?

    Que se passse t il????

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 206
    Points : 81
    Points
    81
    Par défaut informations complémentaires
    Je précise même que du côté code PHP, juste après m'être connecté, (petit ocilogon), je fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alter session set NLS_DATE_FORMAT='DD/MM/YYYY'
    Mais rien a faire quand je fais un echo de la date que je récupère, elle reste au format 'DD/MON/YYYY' Grrrrrrrrrrrrrr

  7. #7
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Pouvez-vous nous le résultat du script suivant:

    ALTER session SET NLS_DATE_FORMAT='DD/MM/YYYY';
    select * from nls_session_parameters;
    select sysdate from dual;
    Et nous donner un script SQL complet qui de fonctionne pas ?

    Est-ce que le "echo" est une instruction PHP ? Si les données sont correctement affichées par le "SELECT" mais par "echo", c'est probablement un problème de configuration PHP et non un problème Oracle.

  8. #8
    Membre actif Avatar de Jean_Benoit
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    499
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 499
    Points : 234
    Points
    234
    Par défaut
    J'ai trouvé ça dans mon php.ini ( Wamp 5 )

    ; Specify how datetime and datetim4 columns are returned
    ; On => Returns data converted to SQL server settings
    ; Off => Returns values as YYYY-MM-DD hh:mm:ss
    ;mssql.datetimeconvert = On
    Sinon j'ai pas trouvé de mention à la date dans Httpd.conf
    Et dans phpinfo(); non plus, seulement les jeux de caractères.

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

Discussions similaires

  1. [3.7.1] Format des dates sous OpenOffice Calc
    Par Kobe Horserider dans le forum BIRT
    Réponses: 2
    Dernier message: 12/12/2014, 11h15
  2. Format de date sous import CSV
    Par SOLEIL1962 dans le forum Access
    Réponses: 3
    Dernier message: 14/09/2008, 22h14
  3. Format de date sous Access
    Par pepi22 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 20/12/2007, 00h14
  4. [C#] Format de date sous Access
    Par choas dans le forum Windows Forms
    Réponses: 1
    Dernier message: 14/10/2006, 15h28
  5. Format de date sous Interbase
    Par Vulcanos dans le forum InterBase
    Réponses: 5
    Dernier message: 05/01/2005, 15h29

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