Trabajar con cantidades en java y mysql
Realize una aplicación conforme iba aprendiendo java, ahora que ya esta casi terminada me encuentro con un problema.
Mysql no acepta que guarde en una columna double cantidades como 1,000.00.
Para trabajar con cantidades de moneda que tipo de dato en mysql puedo utilizar?
Para guardar digamos 12,000.45
- Inicie sesión o regístrese para enviar comentarios
?
Qué tipo le pasas desde Java? debe aceptar BigDecimal sin problemas. Si le estás pasando un String "1,000.00" estás mal... eso es para desplegarlo al usuario pero a la base de datos tienes que pasarle el dato numérico...
En java uso BigDecimal
java BigDEcimal y en mysql double
Respuesta
Pudieras utilizar double en ambos y te evitarias de problemas.
"Mysql no acepta que guarde
"Mysql no acepta que guarde en una columna double cantidades como 1,000.00."
Si lo estas guardando como string y tu columna es numérica ( double ) pues, no, no te va a dejar.
Deberías tener una referencia al número y si usas JDBC escribir:
Pero si tu variable es un string:
Ni siquiera va a compilar. Suponiendo que le estás pasando el string concatenado ( mala práctica ):
Pues claro que te va a mandar lejos.
Lo que debes de hacer ( además de usar un
) es usar el número:
Pero si ya estás en eso, mejor usa un
( mencioné que mejor uses un
)
;)
y que tal...
Y que tal si la columna de MySQl le pones tipo DECIMAL() ;?