2017-06-22 1 views
-1

J'utilise mysql workbench pour gérer ma base de données (mysql). J'ai besoin de stocker une valeur entière qui a plus de 20 chiffres (nous avons 21 chiffres). J'essaie d'enregistrer au format Bigint mais son pas résolu et je reçois la même erreur:erreur mysql 1264 valeur hors plage pour la colonne

mysql error 1264 out of range value for column 

Quelle est la meilleure solution pour sauver un entier avec 21 chiffres?

+0

essayer de le stocker sous forme flottante double – Jens

+0

BIGINT (21) ne signifie pas que vous pouvez enregistrer un INT avec 21 chiffres .. lisez https://stackoverflow.com/questions/7142604/what-to-do-when-yne-needs-integers-larger-than-20-digits-on-mysql –

+0

@ rrpik93 J'ai mis à jour ma réponse –

Répondre

1

Vous pouvez utiliser le type de données décimales

La syntaxe de déclaration pour une colonne DECIMAL est DECIMAL (M, D). Les plages de valeurs pour les arguments dans MySQL 5.1 sont les suivantes:

M est le nombre maximal de chiffres (la précision). Il a une gamme de 1 à 65. (Les anciennes versions de MySQL permettaient une gamme de 1 à 254.)

D est le nombre de chiffres à droite de la virgule décimale (l'échelle). Il dispose d'une plage de 0 à 30 et ne doit pas être plus grand que M.

Sur la base de réponse MySQL: Size of decimal data type

+1

@ john-joe J'ai mis à jour ma réponse. –

+0

Merci pour les replys;) – rrpik93