Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

tipo de dato para importe en euros

Estas en el tema de tipo de dato para importe en euros en el foro de Mysql en Foros del Web. Buenas tardes. En una tabla de mi base de datos, tengo el campo "base_imponible" y me gustaría saber con qué tipo de dato debo guardar ...
  #1 (permalink)  
Antiguo 06/05/2009, 10:51
Avatar de rafaconpu  
Fecha de Ingreso: febrero-2006
Mensajes: 331
Antigüedad: 18 años, 1 mes
Puntos: 3
Pregunta tipo de dato para importe en euros

Buenas tardes.

En una tabla de mi base de datos, tengo el campo "base_imponible" y me gustaría saber con qué tipo de dato debo guardar este campo: double, float, decimal, etc... ya que lo que pretendo es que se guarde por ejemplo la siguiente cantidad: 62,95 €

No encuentro ningún campo que sea de tipo: money como ocurre por ejemplo en Access.

Espero alguna sugerencia o ayuda.
Gracias.
  #2 (permalink)  
Antiguo 12/05/2009, 00:11
 
Fecha de Ingreso: mayo-2009
Mensajes: 8
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: tipo de dato para importe en euros

Para campos monetarios yo uso Decimal 10,2 (hasta 10 dígitos, con dos decimales) y hasta la fecha no he tenido problema alguno con ellos.
  #3 (permalink)  
Antiguo 12/05/2009, 09:22
Avatar de rafaconpu  
Fecha de Ingreso: febrero-2006
Mensajes: 331
Antigüedad: 18 años, 1 mes
Puntos: 3
Respuesta: tipo de dato para importe en euros

Gracias por la respuesta.

¿Cómo puedo entonces agregarle el símbolo del € a ese campo? Más que nada es para que salga bonito a la hora de mostrarlo a un usuario.
  #4 (permalink)  
Antiguo 12/05/2009, 10:04
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: tipo de dato para importe en euros

Cita:
Iniciado por rafaconpu Ver Mensaje
Gracias por la respuesta.

¿Cómo puedo entonces agregarle el símbolo del € a ese campo? Más que nada es para que salga bonito a la hora de mostrarlo a un usuario.
Si el tema es que salga bonito, eso lo tienes que manejar en la visualización. Los campos de tipo DECIMAL, FLOAT o REAL, no guardan símbolos. Nunca.
En todo caso, lo debes resolver en la sentencia de consulta (SELECT) y no en la de inserción.

Por otro lado, usar un valor de tipo DECIMAL(M,N) es funcional solamente para valores monetarios directos, pero no resulta funcional a la hora de los cálculos porcentuales e incrementos o intereses, porque genera un redondeo propenso a generar diferencias graves cuando se manipulan sumas muy grandes, como por ejemplo, los balances y declaraciones de impuestos.
En este sentido es mejor usar DOUBLE o FLOAT, que permite mejores resultados, y en todo caso resolver la visualización usando las funciones ROUND(valor,decimales) o bien TRUNCATE(valor,decimales)
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:12.