• Viernes 8 de Noviembre de 2024, 17:36

Autor Tema:  buscar un registro con una variable  (Leído 5085 veces)

ferreyravh

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
buscar un registro con una variable
« en: Miércoles 10 de Noviembre de 2010, 02:08 »
0
pongo esto pero me da registros 0
Dim con As String
Set base = New Connection
Set rst = New Recordset
Set rst1 = New Recordset
ruta = "C:baseestasit_sdos201005.mdb"

'Abrimos la base de datos
base.CursorLocation = adUseClient
base.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & ruta
con = InputBox("ingrese numero de DNI : ")
rst1.Open "select * from Estasit_Sdos_Ofic where documento like con;", base

'Abrimos el recordset y Ejecutamos la consulta
'rst.Open "SELECT Count(*) as ndoc FROM(select distinct documento from  Estasit_Sdos_Ofic)where documento='con' ;", base

'Mostramos el resultado Maximo y Minimo del campo Gastos
'MsgBox rst.Fields("ndoc")
' Text2.Text = ndoc
 Set DataGrid1.DataSource = rst1
End Sub

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: buscar un registro con una variable
« Respuesta #1 en: Miércoles 10 de Noviembre de 2010, 07:08 »
0
¿Access permite subselects?

ferreyravh

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: buscar un registro con una variable
« Respuesta #2 en: Miércoles 10 de Noviembre de 2010, 13:47 »
0
hola que tal gracias por responder
mira estoy trabajando en visual basic 6.0 con sql
si yo pongo un campo fijo o sea un nro de dni fijo por ejemplo where=' xxxxxxxx' me los cuenta y me lo busca pero cuan trato de remplazar el 'xxxxxxxx' con una variable ingresada desde un inputbox me da regisatros igual cero probe el where y el like y ninguno funciona
desde ya gracias

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: buscar un registro con una variable
« Respuesta #3 en: Miércoles 10 de Noviembre de 2010, 14:30 »
0
Cita de: "ferreyravh"
ero cuan trato de remplazar el 'xxxxxxxx' con una variable ingresada desde un inputbox me da regisatros igual cero probe el where y el like y ninguno funciona
Repásate cómo concatenar strings en VB6

LeGatoRojo

  • Miembro HIPER activo
  • ****
  • Mensajes: 552
  • Nacionalidad: mx
    • Ver Perfil
    • LeGatoRojo
Re: buscar un registro con una variable
« Respuesta #4 en: Jueves 11 de Noviembre de 2010, 00:04 »
0
En visual, sólo usa

Código: Visual Basic
  1.  
  2. strSQL="SELECT * FROM tabla WHERE campo=" & variable
  3.  
  4.  

por cierto variable tiene que ser string  <_<
Un día desperte y en lugar de dientes tenía colmillos, en lugar de manos, tenía garras; pero lo más impactante fue el color escarlata de mi pelaje.

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: buscar un registro con una variable
« Respuesta #5 en: Jueves 11 de Noviembre de 2010, 08:49 »
0
Cita de: "Darktigerhell"
En visual, sólo usa

Código: Visual Basic
  1.  
  2. strSQL="SELECT * FROM tabla WHERE campo=" & variable
  3.  
  4.  

por cierto variable tiene que ser string  <_<
Eso no funciona. Pruébalo tú mismo si quieres. Además, deja que se lo curre solo, es algo fácil, así se acordará de ello y con suerte aprende algo.

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: buscar un registro con una variable
« Respuesta #6 en: Jueves 11 de Noviembre de 2010, 10:01 »
0
Hola

El error esta aqui.

Con (variable de VB donde tomas el valor del inputbox)

pero en el codigo lo pasas como parte de la cadena:

Código: Visual Basic
  1. rst1.Open "select * from Estasit_Sdos_Ofic where documento like con;", base
  2.  

debes concatenar como te dicen en las respuestas anteriores, ahora tomando en cuenta que fuera un campo de tipo texto entonces debera ser encerrado entre comillas (sin interrumpir las propias usadas en la cadena de VB) esto se hace usando apostrofes

esto es si fuera una constante
Código: Visual Basic
  1. rst1.Open "select * from Estasit_Sdos_Ofic where documento like 'con';", base
  2.  

usando la variable
Código: Visual Basic
  1. rst1.Open "select * from Estasit_Sdos_Ofic where documento like '"& con &"';", base
  2.  

y como estas utilizando el operador like es probable que necesites comodines

Ejemplo: (para mayor referencia lee acerca del operador like en Access)
Código: Visual Basic
  1. rst1.Open "select * from Estasit_Sdos_Ofic where documento like '*"& con &"*';", base
  2.  

Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: buscar un registro con una variable
« Respuesta #7 en: Jueves 11 de Noviembre de 2010, 10:57 »
0
Demasiado masticado F_Tanori  :no:  :P

LeGatoRojo

  • Miembro HIPER activo
  • ****
  • Mensajes: 552
  • Nacionalidad: mx
    • Ver Perfil
    • LeGatoRojo
Re: buscar un registro con una variable
« Respuesta #8 en: Jueves 11 de Noviembre de 2010, 18:14 »
0
Cita de: "m0skit0"
Cita de: "Darktigerhell"
En visual, sólo usa

Código: Visual Basic
  1.  
  2. strSQL="SELECT * FROM tabla WHERE campo=" & variable
  3.  
  4.  

por cierto variable tiene que ser string  <_<
Eso no funciona. Pruébalo tú mismo si quieres. Además, deja que se lo curre solo, es algo fácil, así se acordará de ello y con suerte aprende algo.


Pues lo he probado siempre, copy paste de código... en fin  :bad: ...ademas es un foro, somos libres de responder o ayudar o de sólo decir "usa google"
Un día desperte y en lugar de dientes tenía colmillos, en lugar de manos, tenía garras; pero lo más impactante fue el color escarlata de mi pelaje.

ferreyravh

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: buscar un registro con una variable
« Respuesta #9 en: Jueves 11 de Noviembre de 2010, 23:24 »
0
gracias por responder lo voy a prober y luego les cuento

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: buscar un registro con una variable
« Respuesta #10 en: Viernes 12 de Noviembre de 2010, 01:04 »
0
Cita de: "Darktigerhell"
Pues lo he probado siempre, copy paste de código... en fin
Prueba con un campo VARCHAR y verás lo que te digo.

ferreyravh

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: buscar un registro con una variable
« Respuesta #11 en: Viernes 12 de Noviembre de 2010, 04:11 »
0
grosos me salio con la info que me pasaron
muchas gracias por todo

LeGatoRojo

  • Miembro HIPER activo
  • ****
  • Mensajes: 552
  • Nacionalidad: mx
    • Ver Perfil
    • LeGatoRojo
Re: buscar un registro con una variable
« Respuesta #12 en: Viernes 12 de Noviembre de 2010, 05:40 »
0
Cita de: "m0skit0"
Cita de: "Darktigerhell"
Pues lo he probado siempre, copy paste de código... en fin
Prueba con un campo VARCHAR y verás lo que te digo.


Eso todo el mundo lo sabe...bueno casi todos...en fin sólo era un ejemplo para lo de concatenar, no para su caso especifico  :wacko:
Un día desperte y en lugar de dientes tenía colmillos, en lugar de manos, tenía garras; pero lo más impactante fue el color escarlata de mi pelaje.

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: buscar un registro con una variable
« Respuesta #13 en: Viernes 12 de Noviembre de 2010, 12:04 »
0
Todo el mundo obviamente no, porque él desde luego no lo sabía. En todo caso, problema solucionado, y disculpa mi intromisión en tu respuesta.