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

SQL Procédural MySQL Discussion :

Taille maximale pour un nombre


Sujet :

SQL Procédural MySQL

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 685
    Points : 132
    Points
    132
    Par défaut Taille maximale pour un nombre
    Bonjour,

    J'ai un champ DOUBLE dans lequel je n'arrive pas à faire entrer des nombre de plus d'une dizaine de décimales.

    Je ne sais pas si c'est la longueur du nombre qui est limitée ou le nombre de décimales, mais par exemple :

    173.21921721002

    Si j'ajoute une décimale elle n'est pas prise en compte à l'enregristrement.

    Est-il possible d'avoir des nombres à 25 ou 30 chiffres ?

  2. #2
    Membre du Club
    Homme Profil pro
    Etudiant(IUT info)/Stagiaire
    Inscrit en
    Mai 2013
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant(IUT info)/Stagiaire

    Informations forums :
    Inscription : Mai 2013
    Messages : 49
    Points : 47
    Points
    47
    Par défaut
    Salut !

    Si tu as acces à la structure de la table, en dessous de "type" tu as un paramêtre "lenght/value". C'est ici que ca indique le nombre de caractères (donc, dans ton cas, des chiffres) que mysql accepte.
    Si tu n'as pas accès à la base... Je ne vois pas comment t'aider, sachant que je suis loin d'être un expert

    Cordialement

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 685
    Points : 132
    Points
    132
    Par défaut
    Bonjour,

    Merci de ta réponse.


    J'ai accès à la base via PhpMyAdmin.

    Mon champ est DOUBLE (pas FLOAT)

    Il y a bien une zone "taille valeurs" qui pour l'instant n'est pas renseignée.

    Si je mets 20, cela signifie que l'on peut entrer des nombres de 20 chiffres ?

    Je vais essayer sur une petite base car celle-là est en production avec des milliers de références...

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 685
    Points : 132
    Points
    132
    Par défaut
    Bonjour,

    Je viens de saisir 20 dans taille-valeur d'un champ DOUBLE.

    phpMyAdmin n'en veut pas, erreur SQL.

  5. #5
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Bonjour,

    DOUBLE(T, D)

    T => Taille de l'affichage
    D => Nombre de Décimales

    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 685
    Points : 132
    Points
    132
    Par défaut
    Bonjour,

    Merci de ta réponse.

    DOUBLE (20,20)

    La modif est acceptée mais si j'essaye d'entrer un nombre à 20 décimales, j'ai un message d'erreur "out of range" et l'enregistrement est refusé.

    Je ne peux toujours pas dépasser une dizaine de décimales.

    J'ai envoyé un mail au serveur, peut-être un paramétrage chez eux.

  7. #7
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Re,

    (LongueurTotaleAvecDécimale, LongueurDécimale) !
    Ou LongueurTotaleAvecDécimale > LongueurDécimale

    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 685
    Points : 132
    Points
    132
    Par défaut
    Bonjour,

    Merci de ta réponse.

    J'ai fait un essai avec DOUBLE (25,20) sur une base de test.

    Ça commence à délirer au-delà de la quinzième ou seizième décimale.

    En plus, cela ajoute des décimales à des valeurs déjà engeristrées, par exemple :

    1 devient quelque chose du genre
    1.0000000000000548

    Ce qui serait assez grave dans la vraie vie car ces nombres sont en fait des codes qui sont tranformés en textes...

    J'attends des nouvelles du serveur.

  9. #9
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Re,

    Comment est définie votre colonne dans votre table ?

    ces nombres sont en fait des codes qui sont tranformés en textes...
    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 685
    Points : 132
    Points
    132
    Par défaut
    double
    UNSIGNED
    Null : Non
    Default : 0

    C'est PHP qui décode les nombres, cette colonne ne contient que des nombres entiers ou relatifs.

    Merci de ton intérêt

  11. #11
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Bonjour,

    Autant pour moi, je dis des bêtises je crois

    Essayez DECIMAL() plutôt....

    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 685
    Points : 132
    Points
    132
    Par défaut
    Citation Envoyé par Chtulus Voir le message
    Essayez DECIMAL() plutôt....
    Merci de ta réponse.
    Je fais le test dès que possible (peut-être pas avant le week-end) et te tiens au courant.

  13. #13
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 685
    Points : 132
    Points
    132
    Par défaut
    Bonjour

    Essayez DECIMAL() plutôt...
    J'ai essayé DECIMAL (25,20) et ça a l'air propre.

    Evidemment, quand ta valeur est 0, c'est un peu lourd de voir :
    0.000000000000000000000

    Je suppose qu'il n'y a pas moyen d'avoir un affichage naturel

    0
    1
    1.1254
    215.124587456
    etc.

    Idéalement, je veux juste pouvoir avoir une vingtaine de décimales, un gors DOUBLE.

    Savez-vous si DECIMAL (25,20) peut avoir un impact sur les temps de réponse par rapport à DOUBLE

    J'hésite entre DECIMAL (25,20) ou ajouter un deuxième champ DOUBLE qui serait le complément du premier en cas de besoin

    IF(champ_2='0',champ_1,CONCAT(champ_1,champ_2)) AS champ_1

    Ceal me semble plus propre que DECIMAL (25,20) mais je dois alors modifier pas mal de requêtes dans les programmes afin de remplacer champ_1 par le contenu ci-dessus.

Discussions similaires

  1. Taille maximale pour XmlDocument
    Par kendras dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 09/04/2009, 16h55
  2. Etablir une taille maximale pour /home/users
    Par cvid07 dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 10/12/2007, 10h05
  3. [W3C] taille maximale pour une URL
    Par trotters213 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 01/08/2007, 11h46
  4. Taille maximale pour un int
    Par Art19 dans le forum Langage
    Réponses: 2
    Dernier message: 28/07/2007, 10h19
  5. [GD] Taille maximale pour ImageCreateFromPng
    Par vica6a dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 05/04/2007, 14h32

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