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

Langage SQL Discussion :

stockage bizarre d'un float dans une base MySQL


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 141
    Points : 92
    Points
    92
    Par défaut stockage bizarre d'un float dans une base MySQL
    Bonjour à tous,

    j'ai un comportement bizarre pour un float(10,3) que je stock dans une BDD MySQL.

    La valeur que je veux stocker est -157577.760 et il m'enregistre -157577.766
    de même si je stock -157577.820 il m'enregistre -157577.828

    Même en modifiant la valeur elle revient toujours à la seconde ...

    Savez-vous d'où peux provenir ce problème ?
    Est-ce mon type qui n'est pas adéquate ?

    Merci d'avance

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345

  3. #3
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 034
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 034
    Points : 23 779
    Points
    23 779
    Par défaut
    Bonjour,

    De plus, le type FLOAT n'étant codé que sur 4 octets, la précision sur la partie décimale du nombre diminue d'autant plus que la valeur de la partie entière augmente.
    Plus il y a besoin d'octets pour représenter cette partie entière, moins il y en a de disponible pour assurer la précision sur la partie décimale.

    En passant la colonne en type DOUBLE, la précision de ces nombres devrait être correcte. Mais pas pour des nombres plus grands.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 20/04/2015, 16h48
  2. Réponses: 7
    Dernier message: 14/04/2010, 14h45
  3. Réponses: 0
    Dernier message: 14/04/2010, 11h35
  4. Réponses: 5
    Dernier message: 10/05/2006, 15h47
  5. Stockage de fichiers dans une base MySQL
    Par FredMines dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 09/01/2006, 22h15

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