Tema: Decimales
Ver Mensaje Individual
  #17 (permalink)  
Antiguo 25/04/2005, 11:21
Avatar de Neuron_376
Neuron_376
 
Fecha de Ingreso: abril-2005
Mensajes: 1.051
Antigüedad: 20 años, 1 mes
Puntos: 2
Un consejo

Respecto a seguridad, te dije a proposito que lo probaras para que lo comprobaras tu mismo...

Cada vez que mandes un dato a SQL Server o a cualquier base de datos, asegurate que el dato que estas mandando corresponde al tipo de dato de la base de datos, si te lo hubiera dicho antes hubieras pensado que estoy mal, y que siempre funciona mandar los datos como caiga, pero ahora te das cuenta de que no.

Cdbl Convierte un dato a tipo DOUBLE, el cual encaja en float como lo tienes, aunque creo que tambienexiste Cflt pero no recuerdo, igaul Cdbl funciona, en tu caso como estas actualizando el campo con el recordset fue el error, el recordset dice:

rs("campo") = variables
VARIABLE_TIPOX = VARIABLEY

Entonces ahi es donde entra la confusion y lo guarda mal, con un insert no hubiera pasado porque la interpretacion de tipos de variables lo dejas directo en el SQL Server, ya que le pasas una simple cadena (consulta)

Bueno, mi consejo, cambia todo tu sitio a enviar los datos correctamente eso te ahorrara futuros dolores de cabeza, y tambien cuando recuperes variables haz esto:

variable = Cdbl(rs("campo"))

Porque tambien es posible que cuando manejas valores asi:

variable = rs("campo")

total = total + variable

Eso te de un error.

Bueno te lo dejo como consejo, ya lo comprobaste, entonces es mejor siempre en tu codigo asegurarte que una variable es exactamente del tipo que necesitas.

suerte!!

NOTA: Recuerda que cuando no eres dueño del hosting, no puedes cambiar nada en la configuracion, por eso es regla que tu codigo use el mejor metodo posible siempre, sin preocuparte por x configuracion en tus servidores.