Pregunta: | 3588 - CONSULTAS DE SQL DESDE VB6 |
Autor: | sergio berteloot |
Mi pregunta se debe a que necesito hacer una consulta desde vb a través de un data control (DAO) a un campo numérico de tipo single en una bd access 97. El problema es que al hacer la consulta, donde el número lleva una coma, vb me da un error porque considera a la coma como si se tratase de un separador de argumentos. EJ: data1.recordsource="select * from tabla1 where importe=156,85". Si hago consultas de números enteros funciona bien, el problema surge con los números que tienen decimales. Les agradezco desde ya la colaboración que me puedan brindar. Saludos, Sergio Berteloot. |
Respuesta: | Reinaldo V.B. |
data1.recordsource="select * from tabla1 where importe="&replace("156,85", ",",".")
esto remplaza caracteres por otros, en este caso las comas por puntos. |
Respuesta: | Fernando Ise |
Yo tenia problemas similares de validacion que solucione con una funcion que le paso el numero y reemplaza la coma por el punto decimal. Public Num$ Public Function Convertir(TextoIni$) Dim Car$, J%,L% L = Len(TextoIni$) Num$ = "" For J = 1 To L Car$ = Mid(TextoIni, J, 1) If Car$ <> "," Then Num$ = Num$ & Car$ Else Num$ = Num$ & "." End If Next J End Function La Accedo directamente si es un textbox Convertir(TxtNum.text) Numero = Val(num$) o lo convierto si es numero Texto$ = trim(str(Numero%)) Convertir(Texto$) Numero = Val(num$) Espero te Sirva. Mucha suerte!! |
Respuesta: | Miguel Sandro Lucero |
Probá esto: data1.recordsource="select * from tabla1 where importe=" & STR(156,85) |