Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

SQL no me admite decimales

Estas en el tema de SQL no me admite decimales en el foro de Visual Basic clásico en Foros del Web. Dim N_1 as integer strSQL = "UPDATE ALUMNOS SET ALUMNOS.N1=" & N_1 CurrentDb.Execute strSQL En el código anterior si definio N_1 como integer funciona (si ...
  #1 (permalink)  
Antiguo 18/07/2005, 03:01
 
Fecha de Ingreso: julio-2005
Mensajes: 59
Antigüedad: 18 años, 9 meses
Puntos: 0
SQL no me admite decimales

Dim N_1 as integer
strSQL = "UPDATE ALUMNOS SET ALUMNOS.N1=" & N_1
CurrentDb.Execute strSQL

En el código anterior si definio N_1 como integer funciona (si es un nº decimal, lo aproxima), pero si lo defino como double, solo funciona cuando N_1 es entero, es decir que si N_1 es decimal no tengo forma de que lo admita la SQL a no ser que lo meta a presión, de esta manera:

strSQL = "UPDATE ALUMNOS SET ALUMNOS.N1=3.1"
  #2 (permalink)  
Antiguo 18/07/2005, 03:31
Avatar de txarly  
Fecha de Ingreso: marzo-2003
Ubicación: Eibar (Gipuzkoa)
Mensajes: 455
Antigüedad: 21 años, 2 meses
Puntos: 2
Que error te da?
Puede ser que al recoger la variable N_1, el separador decimal no sea el punto, sino la coma. En ese caso deberias hacer un replace de la coma por el punto, antes de ejecutar la sentencia SQL.
En caso de que la variable tenga como separador el punto, prueba con esta SQL:

strSQL = "UPDATE ALUMNOS SET ALUMNOS.N1='" & N_1 & "'"

estoy poniendo el numero entre comillas simples '3.1', creo que deberia funcionar.

Un saludo
Txarly
__________________
¿Por qué Uri Geller doblaba cucharas?
  #3 (permalink)  
Antiguo 18/07/2005, 03:43
 
Fecha de Ingreso: julio-2005
Mensajes: 59
Antigüedad: 18 años, 9 meses
Puntos: 0
Muchas gracias compañero, funciona perfectamente. No sabes el trabajo que me has ahorrado, y no, no sé por qué Uri Geller doblaba cucharas, me imagino que por que si.
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 02:01.