Question

Percentage Table

J'ai du code qui ajoute des entrées d'un fichier .csv à la base de données MySQL. Je voudrais savoir quel type de données utiliser pour ajouter le pourcentage du fichier .csv à la colonne en pourcentage de la table MySQL. J'ai essayé avec décimal (même si je savais que c'était mal.), Et j'ai eu cette erreur.

java.sql.BatchUpdateException: Incorrect decimal value: '8%' for column 'Percentage' at row 1
Était-ce utile?

La solution

Si vous voulez stocker comme 80% Ensuite, le type de données doit être varchar ou si vous voulez juste mettre 80.11 Ensuite, le type de données est décimal que vous utilisez.

Je vous suggère de garder le type de données tel qu'il est (décimal) car après la récupération de la base de données si vous voulez des calculs, ce sera un fardeau supplémentaire pour vous. Si ce serait Varchar, tout en le récupérant, vous devez garder dans la chaîne en java. Ensuite, vous devez supprimer % Convertissez ensuite en calculs float puis.

Autres conseils

La décimale fonctionnerait, mais vous stockez simplement une valeur de 8 non «8%», ce qui devrait être un varchar (String).

Si vous avez l'option, je vous encourage à le stocker sous forme décimale (supprimez le caractère pourcentage), puis formater le numéro pour le montrer avec un signe de pourcentage après l'avoir récupéré de la base de données. Dans ce cas, vous pouvez toujours l'utiliser comme type de données décimales, sinon vous devez en utiliser un basé sur une chaîne, comme Varchar.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top