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

Problema deciamles

Estas en el tema de Problema deciamles en el foro de Mysql en Foros del Web. Hola. Tengo un campo donde se pueden poner deciamles. En mi BD lo tengo puesto como float. Cuando el valor es con "," me da ...
  #1 (permalink)  
Antiguo 12/11/2009, 05:02
 
Fecha de Ingreso: enero-2007
Mensajes: 284
Antigüedad: 17 años, 3 meses
Puntos: 1
Problema deciamles

Hola.
Tengo un campo donde se pueden poner deciamles. En mi BD lo tengo puesto como float.
Cuando el valor es con "," me da error en la sentencia SQL al actualizar la BD. Si le pongo con "." me lo inserta bien y me aparece el valor con "." en la BD.

El problema me viene cuando visualizo ese valor en el campo de texto que me vuelve a aparecer con "," aunque en la BD me venga con "."

Al hacer la actualizacion me vuelve a dar error debido a la ",".

Alguna solución?

Gracias.
  #2 (permalink)  
Antiguo 12/11/2009, 05:06
 
Fecha de Ingreso: enero-2007
Mensajes: 284
Antigüedad: 17 años, 3 meses
Puntos: 1
Respuesta: Problema deciamles

También estaria bien que si me insertan el valor con una "," me convierta ese valor a uno con "." y me lo inserte en la BD asi me ahorro que me de un error en la SQL.

Gracias.
  #3 (permalink)  
Antiguo 12/11/2009, 05:25
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: Problema deciamles

Eso es problema de regionalización (la forma de representar valores según la región declarada en la PC está estandarizada, y las "es" usan coma para decimales), y se debe resolver via programación.
En la mayor parte de los lenguajes de programación se usan variables Decimal, Double, Single o Float; luego se los pasa como parámetros para que el conector resuelva el problema, y listo.
En el caso de PHP, si es lo que usas, Eso se resuelve con una función denominada numer_format()
Lo que no debes esperar es que esos temas te los resuelva la base de datos, porque esa no es la función del SQL. Los lenguajes hacen eso mucho mejor porque tienen más recursos, que un DBMS no necesita y representan a la larga una pérdida de performance.
__________________
¿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 01:29.