MySQL - Problemas actualizando campo double

 
Vista:

Problemas actualizando campo double

Publicado por Hugo Contreras (20 intervenciones) el 05/02/2009 15:24:21
El problema es el siguiente. Tengo un campo declarado como double mayor que cero (unsigned).
Actualmente tiene un valor por ej: 0.15 entonces mando a actualizar dicho campo a través de un trigger al cual le paso el valor de -0.15 (new.nu_cantidad). entonces el campo se actualiza pero en lugar de colocar 0
que sería lo lógico coloca un valor xxxxxE-17por ejemplo es decir un valor muy cercano a cero pero no cero.

DELIMITER $$
CREATE TRIGGER easylims.insert_mov_lote AFTER INSERT ON easylims.movimientos_lote
FOR EACH ROW
BEGIN
UPDATE easylims.lote
SET nu_cantidad_exist = nu_cantidad_exist + new.nu_cantidad
WHERE co_lote = new.co_lote;
END$$
DELIMITER;
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Francisco

RE:Problemas actualizando campo double

Publicado por Francisco (21 intervenciones) el 05/02/2009 16:27:55
Con que DB estas trabajando? Tuve un problema parecido y lo solucione declarando el campo como Decimal (10,2), donde 2 es el numero de digitos a la derecha despues de la coma. Proba!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas actualizando campo double

Publicado por Emiliano (98 intervenciones) el 05/02/2009 17:18:41
Hola no se si sera justo este tu problema pero al poner un valor como 'UNSIGNED' significa que solo acepta valores positivos, o sea sin signo.Por eso debe ser que si le pones un valor negativo (menor que 0) te tira lo mas cercano a 0 ,porque valores menores no acepta.

Para solucionarlo declara el valor como 'SIGNED' o sea que acepte valores negativos.

Suerte espero que te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas actualizando campo double

Publicado por Hugo Contreras (20 intervenciones) el 05/02/2009 21:25:21
Gracias por sus comentarios ante nada.

Etoy trabajando con MySql y PowerBuilder. Solucione declarando el campo como DECIMAL(14,4), sin embargo no encuentro la razón del problema ya que le pasaba el valor exactamente pero al restarlo era como si fuese una aporximación del valor quizas se deba a que intrenamente existe algún tipo de problemas entre el tipo de datos double de PowerBuilder y el de MySql.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Francisco

RE:Problemas actualizando campo double

Publicado por Francisco (21 intervenciones) el 05/02/2009 21:55:50
Me paso igual con delphi cuando, pero solo me agregaba los digitos, yo ingresaba 4,2 y se guardaba 4,254643675. Te queria preguntar ya que trabajas con PowerBuilder como haces para crear instaladores de tus sistemas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar