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

Visual Basic Solo lee el número 1 de mysql

Estas en el tema de Visual Basic Solo lee el número 1 de mysql en el foro de Visual Basic clásico en Foros del Web. Bueno, gracias de antemano, estoy empezando en este mundo, y mi idea era, extraer los datos de una base en mysql, para rellenar unos botones, ...
  #1 (permalink)  
Antiguo 08/09/2009, 06:16
 
Fecha de Ingreso: diciembre-2008
Mensajes: 3
Antigüedad: 15 años, 4 meses
Puntos: 0
Visual Basic Solo lee el número 1 de mysql

Bueno, gracias de antemano, estoy empezando en este mundo, y mi idea era, extraer los datos de una base en mysql, para rellenar unos botones, y así hacerlos dinamicos, todos ellos se llaman Botón, y cada uno lleva un numero en su caption, 1, 2, 3... etc mi idea era, leer los id de los productos en la base de datos, si el id ( 1 ) = caption ( 1 ) todo funciona correctamente, el boton cambia su numero por el nombre, pero el resto de botones quedan con su numero, si por el contrario pongo un unico boton, llamado 2, este no cambia jamás, donde cometo el error?
Aqui mi codigo
Código:
Private Sub Form_Load()
Dim Datos As ADODB.Connection
Dim Tabla As ADODB.Recordset
Dim Index As Integer
Set Datos = New ADODB.Connection
Datos.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};" _
& "SERVER=localhost;" _
& "DATABASE=bar;" _
& "UID=root;PWD=****; OPTION=3"
Datos.Open
Datos.DefaultDatabase = "bar"
Datos.CursorLocation = adUseClient

Set Tabla = New ADODB.Recordset
Source = "Select * From consumiciones"
ActiveConnection = Datos
CursorType = adOpenStatic
CursorLocation = udUseClient
LockType = adLockOptimestic

Tabla.Open Source, Datos, adOpenStatic, adLockOptimistic, adCmdUnknown

If Tabla.Fields("id") = Botón(Index).Caption Then
Botón(Index).Caption = Tabla.Fields("nombre")
End If
End Sub
  #2 (permalink)  
Antiguo 08/09/2009, 11:02
Avatar de pkj
pkj
 
Fecha de Ingreso: julio-2006
Ubicación: Órbita sincrónica
Mensajes: 899
Antigüedad: 17 años, 9 meses
Puntos: 29
Respuesta: Visual Basic Solo lee el número 1 de mysql

No tengo idea de como funciona eso que estás usando, pero puedo decirte que la variable index no cambia de valor.
Siempre vale 0, por lo que solo cargas el boton(0).
Espero que te sirva mi observación.

Saludos y suerte.
  #3 (permalink)  
Antiguo 08/09/2009, 13:15
Avatar de culd  
Fecha de Ingreso: noviembre-2003
Mensajes: 959
Antigüedad: 20 años, 6 meses
Puntos: 19
Respuesta: Visual Basic Solo lee el número 1 de mysql

Cita:
Iniciado por Girao Ver Mensaje
Aqui mi codigo
Código:
If Tabla.Fields("id") = Botón(Index).Caption Then
Botón(Index).Caption = Tabla.Fields("nombre")
End If
End Sub
Estas cargando bien la informacion a tu recorset...

El problema es que le asignar solamente al primer boton el nombre.

Tenes que usar un While y recorrer el recorset hasta el final y ahi vas asignando boton por boton
  #4 (permalink)  
Antiguo 09/09/2009, 03:22
 
Fecha de Ingreso: diciembre-2008
Mensajes: 3
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Visual Basic Solo lee el número 1 de mysql

Muchisimas gracias, ya lo logre, con el while, y con 2 botones, con un array aun no lo conseguí, cuando lo logre, publicare el codigo final funcionando por si hay alguien como yo ;)
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 00:37.