ahggha | |
| 2006-09-27 18:44 - Respuestas: 7 - Tema nº: 2422158
Quiero hacer una consulta sql en una tabla en visual basic 6. Lo que quiero hacer es una consulta entre dos fechas que se toman desde dos textboxs. Lo he probado de muchas formas pero no hay manera. El código es el siguiente:
Dim fecha_a As Variant
Dim fecha_b As Variant
fecha_a = "21/9/2006"
fecha_b = "22/9/2006"
Data50.RecordSource = " select * from diario_personal where fecha between fecha_a and fecha_b"
Data50.Refresh
Saludos | |
|
|
ebolo | |
|
Re: Como hacer una consulta en sql en visual basic 6 - 2006-09-27 20:00 - Respuesta 2
Hola, debes de tomar los textbox como variables y no ponerlos dentro de las comillas, además debes dar formato americano a las fechas:
Data50.RecordSource = "select * from diario_personal where fecha between (#" & format(fecha_a,"mm/dd/yyyy") & "# and #" & format(fecha_b,"mm/dd/yyyy") & "#)"
más o menos te quedaría así.
Un saludo.
De todas formas si te acostumbras a trabajar directamente con ADO, sin usar ningún componente DAta, ni Adodc pues mejor.
| |
|
|
ebolo | |
|
Re: Como hacer una consulta en sql en visual basic 6 - 2006-09-27 20:01 - Respuesta 3
Te sigo comentando que Fecha_A y Fecha_b deberías declararlas como date, no como variant.
+saludos.
| |
|
|
ahggha | |
|
Re: Como hacer una consulta en sql en visual basic 6 - 2006-09-30 19:29 - Respuesta 4
ebolo primero gracias por tu ayuda, he probado tu consejo pero me sale el siguiente error:
Error 3075 en tiempo de ejecución operador between sin and en la expresion de consulta fecha between (#09/21/2006# and #09/22/2006#)
Dim fecha_a As date
Dim fecha_b As date
fecha_a= Text6
fecha_b = Text7
'Data50.RecordSource = "select * from diario_personal where fecha between (#" & Format(fecha_a, "mm/dd/yyyy") & "# and #" & Format(fecha_b, "mm/dd/yyyy") & "#)"
Data50.Refresh
Gracias. | |
|
|
ebolo | |
|
Re: Como hacer una consulta en sql en visual basic 6 - 2006-10-02 08:25 - Respuesta 5
Hola, quita los paréntesis que engloba el between:
Data50.RecordSource = "select * from diario_personal where fecha between #" & Format(fecha_a, "mm/dd/yyyy") & "# and #" & Format(fecha_b, "mm/dd/yyyy") & "#"
De todas formas, pienso que es mejor abrir un recordset y trabajar con él, que no darle un origen de datos al objeto Data. Pero bueno esto son manías.
Un saludo.
| |
|
|
|