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

Outils PostgreSQL Discussion :

pgadmin affichage double précision


Sujet :

Outils PostgreSQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Informaticien
    Inscrit en
    Juin 2004
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Informaticien
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2004
    Messages : 184
    Par défaut pgadmin affichage double précision
    bonjour à tous,

    je suis sous postgresql 9.1 avec pgadmin 1.14.3

    je rencontre sous pgadmin, un problème d'affichage des valeurs en double précision
    par exemple pour une valeur stockée en base 30.39993, pgadmin m'affiche 30.4

    peut-on le forcer à afficher la vrai valeur ?

    (note: l'utilitaire console psql effectue aussi l'arrondi )


    merci pour votre aide.

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Par défaut
    bonjour,

    http://www.postgresql.org/docs/9.1/i...e-numeric.html

    double et double précision sont des types numéric inexact.

    Etes-vous sur qu'en base il y a bien ce nombre exactement d'enregistré ?
    (en faisant une multiplication par 100 par exemple ...)

  3. #3
    Membre très actif
    Homme Profil pro
    Informaticien
    Inscrit en
    Juin 2004
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Informaticien
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2004
    Messages : 184
    Par défaut
    oui, j'ai fait un pg_dump de la base et j'ai bien le nombre enregistré en 30.39993

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Par défaut
    A combien est votre paramètre de session : extra_float_digits ? -10 ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    show extra_float_digits
    Essayez de le mettre à 0 si c'est le cas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    set extra_float_digits = 0;

  5. #5
    Membre très actif
    Homme Profil pro
    Informaticien
    Inscrit en
    Juin 2004
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Informaticien
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2004
    Messages : 184
    Par défaut
    extra_float_digits me retourne 0.

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Par défaut
    Déjà comment reproduire le problème?
    En effet:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    create table testdouble(a double precision);
    insert into a values(30.39993);
    insert into testdouble values(30.39993);
    select * from testdouble ;
    Résultat
        a     
    ----------
     30.39993
    (1 row)
    
    et non pas 30.4

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

Discussions similaires

  1. Fichiers data double précision et affichage en real
    Par feynman dans le forum Fortran
    Réponses: 6
    Dernier message: 13/10/2008, 11h15
  2. [Forth] Entrée double précision ?
    Par chemugle dans le forum Autres langages
    Réponses: 1
    Dernier message: 09/01/2007, 00h12
  3. Simple et double Précision en C
    Par r-o-m-z dans le forum C
    Réponses: 4
    Dernier message: 22/10/2006, 13h16
  4. [Débutant] Formulaire affichage double
    Par hudsson dans le forum Access
    Réponses: 8
    Dernier message: 21/03/2006, 18h42
  5. Réponses: 3
    Dernier message: 12/11/2005, 07h32

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