FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Problema con Float en Firebird
Que tal, buen dia.
Tengo un problema con un Campo tipo Float en Firebird. Cuando inserto un valor en el campo de la forma (TDBEdit) por ejmplo 20.1 al guardar el registro en la Base de datos guarda el valor 20.1000003814697, alguien sabe a que se debe o como puedo solucionarlo? hay alguna función que en Firebird que me permita formatear el número al guardarlo o al realizar el select? Muchas gracias Saludos |
#2
|
|||
|
|||
Hola:
Revisa la función RoundTo Saludos |
#3
|
|||
|
|||
Solución...
La funcion RoundTo, funciona bien desde Delphi, pero mi problema era que necesitaba formatearlo desde el select de la base de datos.
Encontré 2 soluciones posibles: 1. Realizar un cast al campo: select cast(campoFloat as numeric(9,2)) as result, campo 2, campo 3... 2. Cambiar el tipo del campo en la tabla a numeric(9,2). Opte por la segunda opción ya que la primera aunque funciona, necesitaba hacer muchos cambios en los querys a la tabla. Muchas gracias. Saludos |
#4
|
||||
|
||||
Presicion Talvez?
Primera se que el tema es del año pasado pero, Tengo el mismo problema,
uso delphy7, firebird1.5 y el tipo de dato a usar es float, que tambien se redondea mal o se guarda con un monton de decimales. ej meto 20 y me guarda como 19.99999869590453 bueno yo habilite en un IBtable cada field y en el field de tipo float le cambie la propiedad presicion de 15 que era por defecto a 7. LA cuestion es que no se si esto es lo correcto, pero ya no me redondea un simple numero. y me muestra bien todos los numeros. |
#5
|
||||
|
||||
Se sabe que los FLOATS funcionan así.
Debes usar Numeric(10,2) o decimal(10,2), siempre en Dialecto 3 para que guarde el número exacto. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#6
|
||||
|
||||
Resp
Bueno yo tube algunos probles con los numeric debido a como hace slso calculo s y con respecto a la precicion hay que tenr mucho cuidado por que esto trbajan de uan manera un poco delicada. Por lo cual decidi usar double prescion y no he tenedo esos problemas que estas teniendo.
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa. |
|
|
|