Pregunta

Percentage Table

Tengo algún código que agrega entradas de un archivo .csv a la base de datos MySQL. Me gustaría saber qué tipo de datos usar para agregar el porcentaje del archivo .csv a la columna porcentual en la tabla MySQL. Lo intenté con Decimal (aunque sabía que estaba mal), y recibí este error.

java.sql.BatchUpdateException: Incorrect decimal value: '8%' for column 'Percentage' at row 1
¿Fue útil?

Solución

Si quieres almacenar como 80% entonces el tipo de datos debería ser varchar o si solo quieres poner 80.11 Entonces el tipo de datos es decimal que está utilizando.

Le sugiero que mantenga el tipo de datos tal como está (decimal) porque después de recuperarse de la base de datos si desea algunos cálculos, será una carga adicional para usted. Si fuera Varchar, entonces, al recuperarlo, debe mantener en la cadena en Java. Entonces tiene que eliminar % Luego convierta en flotación y luego cálculos.

Otros consejos

Decimal funcionaría, pero solo almacenaría un valor de 8 no '8%' que necesitaría ser un Varchar (cadena).

Si tiene la opción, le animo a que lo almacene como decimal (elimine el carácter porcentual) y luego formatee el número para mostrarlo con un signo porcentual después de recuperarlo de la base de datos. En ese caso, aún puede usarlo como tipo de datos decimales, de lo contrario, tendría que usar una basada en cadenas, como Varchar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top