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

Buscar en una tabla de MySQL

Estas en el tema de Buscar en una tabla de MySQL en el foro de Visual Basic clásico en Foros del Web. Hola, necesito saber como puedo buscar en una tabla de MySql remota un campo y luego compararlo con otro Saludos...
  #1 (permalink)  
Antiguo 09/10/2005, 07:58
Avatar de Alwar  
Fecha de Ingreso: octubre-2005
Ubicación: Madrid
Mensajes: 27
Antigüedad: 18 años, 6 meses
Puntos: 0
Pregunta Buscar en una tabla de MySQL

Hola, necesito saber como puedo buscar en una tabla de MySql remota un campo y luego compararlo con otro

Saludos
  #2 (permalink)  
Antiguo 09/10/2005, 08:03
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
si es remota te tenes que acostumbrar a usar el limit, el cual te da hasta un numero de respuestas no te da todos los datos de la tabla por ejemplo si queres solo 5 datos colocas limit 5 entonces para tu busqueda ya es remota pedi el minimo de datos.

select * from tabla where codigo = 1 Limit 10

así sería la busqueda nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #3 (permalink)  
Antiguo 09/10/2005, 08:06
Avatar de Alwar  
Fecha de Ingreso: octubre-2005
Ubicación: Madrid
Mensajes: 27
Antigüedad: 18 años, 6 meses
Puntos: 0
creo q no me as entendido, yo necesito q busque un registro y se situe sobre el, luego extraer los datos de ese registro
  #4 (permalink)  
Antiguo 09/10/2005, 08:18
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
no sabes el nombre del campo??

estas hablando de campos y de registros.. campo es el lugar donde se guardan los registros...

partiendo de esto que necesitas...

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #5 (permalink)  
Antiguo 09/10/2005, 08:20
Avatar de Alwar  
Fecha de Ingreso: octubre-2005
Ubicación: Madrid
Mensajes: 27
Antigüedad: 18 años, 6 meses
Puntos: 0
No entiendo el limit, si quiero q encuentre uno solo q tengo q hacer q limit = 1???
  #6 (permalink)  
Antiguo 09/10/2005, 08:22
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
exacto.. de esa manera funciona el limit...

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #7 (permalink)  
Antiguo 09/10/2005, 10:57
Avatar de Alwar  
Fecha de Ingreso: octubre-2005
Ubicación: Madrid
Mensajes: 27
Antigüedad: 18 años, 6 meses
Puntos: 0
Alguien sabe porque al intentar utilizar el metodo Find me da un erro?? el error es el 3001, lo q no entiendo, es que hace lo que tiene que hacer, y si pongo un On error resume next funciona a la perfeccion, pero como no me gusta tener esa instruccion hay querria solucionar el problema, os pego el codigo:

With rUsuarios
.Find Usuario 'El error 3001 lo da aqui
If rUsuarios!Password = Password Then

Descripcion del Error:
Argumentos incorrectos, fuera de intervalo permitido o en conflicto con otros

Saludos!
  #8 (permalink)  
Antiguo 09/10/2005, 11:13
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
Cita:
Iniciado por Alwar

With rUsuarios
.Find Usuario 'El error 3001 lo da aqui
If rUsuarios!Password = Password Then
Cita:
Iniciado por Alwar
Alguien sabe porque al intentar utilizar el metodo Find me da un erro??
pues yo creo saber... jeje
Código:
rUsuarios.Find "Usuario = " & CodigoUsuario ' donde codigousuario es una variable y Usuario es el Campo donde buscas el Codigo Usuario
nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila

Última edición por GeoAvila; 09/10/2005 a las 11:25
  #9 (permalink)  
Antiguo 09/10/2005, 11:25
Avatar de Alwar  
Fecha de Ingreso: octubre-2005
Ubicación: Madrid
Mensajes: 27
Antigüedad: 18 años, 6 meses
Puntos: 0
Si te e entendido bien:
.Find "Nick = " & Usuario

Nick es el campo de la tabla, y usuario es la variable q quiero q busque
pero no va, da el mismo error
  #10 (permalink)  
Antiguo 09/10/2005, 11:27
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
Cita:
Iniciado por Alwar
Si te e entendido bien:
.Find "Nick = " & Usuario

Nick es el campo de la tabla, y usuario es la variable q quiero q busque
pero no va, da el mismo error
podes colocar toda la conexion que haces incluyendo el filter para poderte ayudar... asi ver donde esta tu error..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #11 (permalink)  
Antiguo 09/10/2005, 11:34
Avatar de Alwar  
Fecha de Ingreso: octubre-2005
Ubicación: Madrid
Mensajes: 27
Antigüedad: 18 años, 6 meses
Puntos: 0
Todo Entero:
Dim Usuario As String
Dim Password As String
Usuario = TxtUsuario.Text
Password = TxtContraseña.Text

Dim rUsuarios As ADODB.Recordset

On Error GoTo ManejoError
CrearConexion
DoEvents
'Si la conexion no esta establecida no muestra nada
If CrearConexion = False Then
MsgBox "Error, No hay Conexion", vbOKOnly + vbCritical
Exit Sub
End If

Set rUsuarios = New ADODB.Recordset
Set rUsuarios = oConexion.Execute("SELECT * FROM b2l1640_DataAlwar.Usuarios")
With rUsuarios
.Find "Nick = " & Usuario
If rUsuarios!Password = Password Then
MsgBox "Bienvenido " & Usuario, vbOKOnly + vbInformation, "Apogeus One"
UsLogIn = True
UsuarioLogIN = Usuario
frmLogin.StBar.Panels(1) = "Hola " & Usuario
Unload Me
Else
MsgBox "Contraseña Incorrecta o usuario no encontrado", vbOKOnly + vbCritical, "Apogeus One"
Exit Sub
End If
End With

rUsuarios.Close
Set rUsuarios = Nothing

Exit Sub
ManejoError:
ShowError "LogIn", "LeerUsuarios"
End Sub
  #12 (permalink)  
Antiguo 09/10/2005, 11:40
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
ok intenta con este código..

Código:
    Dim db As Connection
          Dim adoPrimaryRS As Recordset
          Set db = New Connection
          Set adoPrimaryRS = New Recordset
          db.CursorLocation = adUseClient
          db.Open BasePath ' aqui colocas tu conexión..
          adoPrimaryRS.Open "SELECT * from empleados where  id_empleado = " & Me.txtUserName.Text & " ", db, adOpenStatic, adLockOptimistic
            If adoPrimaryRS.BOF = False Then
                If adoPrimaryRS!contrasena = Me.txtPassword.Text Then
                    MsgBox "Bienvenido " & adoPrimaryRS!Nombre & " " & adoPrimaryRS!APELLIDO, vbInformation, "Loggin"
                End If
            Else
                MsgBox "El usuario no existe intente de nuevo", vbCritical, "Loggin"
            End If
            adoPrimaryRS.Close
si te das cuenta txtusername es el codigo del usuario entonces se hace la consulta en base a ese usuario tal como te decía...
espero te sirva el código... dependiendo si el codigo es numérico o bien es texto si el codigo es texto sería asi... la conexión

Código:
          adoPrimaryRS.Open "SELECT * from empleados where  id_empleado = '" & Me.txtUserName.Text & "' ", db, adOpenStatic, adLockOptimistic
de contrario si es número es como está en el ejemplo...

bueno una leve explicación de como se hace lo que estas pretendiendo...
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #13 (permalink)  
Antiguo 09/10/2005, 12:01
Avatar de Alwar  
Fecha de Ingreso: octubre-2005
Ubicación: Madrid
Mensajes: 27
Antigüedad: 18 años, 6 meses
Puntos: 0
Nada, me da error, pues como e dicho antes, con on error resume next funciona perfectamente, a si q voy a hacer un sistema con variables y on error goto error para q ignore el error
  #14 (permalink)  
Antiguo 09/10/2005, 13:45
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
me imagino que si es un problema con tu proyecto intentá instalando el el mdac 2.8 y seleccion un data object más reciente este debería ayudarte puesto que el código que te puse funciona en un proyecto yo he desarrollado con mysq.

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #15 (permalink)  
Antiguo 09/10/2005, 14:02
Avatar de Alwar  
Fecha de Ingreso: octubre-2005
Ubicación: Madrid
Mensajes: 27
Antigüedad: 18 años, 6 meses
Puntos: 0
utilizo ADO 2.8 y Recordset 2.8, si sabes de alguno mas reciente dimelo y lo busco, d todas formas ya lo solucione poniendo Resume next antes de Find y Goto ManejoError despues, asi solo ignora los errores de esa linea
  #16 (permalink)  
Antiguo 09/10/2005, 14:05
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
yo sería de la idea que probes con otra tabla para descartar que fuera error de la tabla..
nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
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 16:05.