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

Bases de données Delphi Discussion :

Firebird : du type Float à Decimal


Sujet :

Bases de données Delphi

  1. #1
    Membre éclairé Avatar de Cpt Anderson
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2005
    Messages
    639
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 639
    Par défaut Firebird : du type Float à Decimal
    Salut à tous,

    dans l'application que je suis en train de développer avec Delphi 10.1 et firebird 3, je me suis heurté à un problème de décimal : j'ai des champs de BDD de type FLOAT, or ceux-ci sont stocké avec 7 chiffres après la virgule si j'en crois la doc Firebird. Résultat, dans mon appli, quand je vais lire mes champs et que je renseigne les propriétés de mes objets, j'ai des chiffres à rallonge.

    Après avoir lu pas mal de doc, j'ai pris la décision de changer tous mes type FLOAT en DECIMAL(18,3). Pensez-vous que c'est une bêtise ? si oui pourquoi et que dois je faire ?

    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 583
    Billets dans le blog
    65
    Par défaut
    Bonjour,

    Le type FLOAT de firebird j'ai toujours évité, par contre j'ai toujours hésité entre NUMERIC et DECIMAL il y a une légère différence entre les deux mais c'est un débat qui peut se reporter vers le forum de Firebird (je crois y avoir déjà donné mon avis à ce sujet)

    Tout dépend ensuite :
    - des données à mettre dans les colonnes
    - des composants utilisés pour accéder i.e Firedac nécessitera un petit ajustement car, à ma souvenance, il peut considérer ce nouveau type comme un format BCD
    - voir si un simple displayformat (ou autre) ne peut pas régler ton soucis (ce qui nécessite une définition de chaque colonne de la source de données du coup)

  3. #3
    Membre éclairé Avatar de Cpt Anderson
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2005
    Messages
    639
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 639
    Par défaut
    Merci Sergio,

    j'utilise firedac pour me connecter à ma BDD; Je viens d'ajouter un arrondi pour chaque valeur de type FLOAT que je vais chercher en base... ca fonctionne même si je trouve pas ça génial.

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 583
    Billets dans le blog
    65
    Par défaut
    Citation Envoyé par Cpt Anderson Voir le message
    j'utilise firedac pour me connecter à ma BDD
    s'il s'agit de firedac alors il y a peut être l'astuce des FormatOptions et des Maprules

    j'ai du déjà déblatéré à ce sujet dans le forum à toi de retrouver la discussion (fait trop chaud pour que je la fasse de moi même )
    P.S. si tu utilises cette astuce, n'oublie pas le FormatOptions.ownMaprules:=True;

  5. #5
    Membre éclairé Avatar de Cpt Anderson
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2005
    Messages
    639
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 639
    Par défaut
    Merci pour ton aide. Je regarde ça.

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

Discussions similaires

  1. [Datatype] limite des types float, double et decimal
    Par yolepro dans le forum XML/XSL et SOAP
    Réponses: 7
    Dernier message: 27/03/2013, 10h41
  2. insérer une valeur de type float dans une abse de données
    Par Stephane_br dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/11/2005, 10h47
  3. Réponses: 3
    Dernier message: 27/06/2005, 11h57
  4. Pb de formatage de champs de type float
    Par FrankyNormand dans le forum XMLRAD
    Réponses: 9
    Dernier message: 05/05/2005, 12h37
  5. [MS-SQL][ADO] précision du type FLOAT
    Par Le Lézard dans le forum Bases de données
    Réponses: 2
    Dernier message: 23/09/2004, 15h30

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