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

consulta mysql

Estas en el tema de consulta mysql en el foro de Visual Basic clásico en Foros del Web. hola de nuevo!! al hacer una consulta a mysql, me muestra solo el primer campo no todos nose por que, ademas quisiera saber como agregar ...
  #1 (permalink)  
Antiguo 20/11/2008, 16:26
 
Fecha de Ingreso: junio-2006
Mensajes: 166
Antigüedad: 17 años, 10 meses
Puntos: 3
consulta mysql

hola de nuevo!! al hacer una consulta a mysql, me muestra solo el primer campo no todos nose por que, ademas quisiera saber como agregar un mensaje de error si no encuentra ningun campo. gracias!!!
tengo el siguiente codigo en vb6

Public BD As ADODB.Connection
Public RecSQL As ADODB.Recordset

Private Sub Command1_Click()

On Error GoTo Ver

Set BD = New ADODB.Connection
BD.ConnectionString = "driver={MySQL ODBC 3.51 Driver};" & _
"Server=" & Text1 & ";" & _
"Port=" & Text2 & ";" & _
"Database=" & Text3 & ";" & _
"User=" & Text4 & ";" & _
"Password=" & Text5 & ";" & _
"Option=3;"

BD.Open

MsgBox "Conexión establecida!!!", vbExclamation, "Conexión"

Exit Sub
Ver:
MsgBox "Nº de error: " & Err.Number & " | " & Err.Description, vbCritical, "Control de errores"
Err.Clear
End Sub


Private Sub Command2_Click()
On Error GoTo Ver

Set RecBD = New ADODB.Recordset
RecBD.Open "select * from categories", BD, adOpenStatic, adLockOptimistic

Text6.Text = RecBD.Fields("id")
Text7.Text = RecBD.Fields("name")


Exit Sub
Ver:
MsgBox "Nº de error: " & Err.Number & " | " & Err.Description, vbCritical, "Control de errores"
Err.Clear

End Sub
  #2 (permalink)  
Antiguo 20/11/2008, 21:21
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: consulta mysql

Es que debes hacer un bucle que recorra todos los datos del Recordset. Por ejemplo:
Código vb:
Ver original
  1. Do While Not RecDB.EOF 'Se ejecuta mientras haya registros
  2.    MsgBox RecDB.Fields("id") 'Mostrar campo id del registro actual
  3.    MsgBox RecDB.Fields("name") 'Mostrar campo name del registro actual
  4.    RecDB.MoveNext 'Pasar al siguiente registro
  5. Loop
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 21/11/2008, 03:02
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Respuesta: consulta mysql

Cita:
Iniciado por sabruchi Ver Mensaje
hola de nuevo!! al hacer una consulta a mysql, me muestra solo el primer campo no todos nose por que, ademas quisiera saber como agregar un mensaje de error si no encuentra ningun campo. gracias!!!
tengo el siguiente codigo en vb6

Public BD As ADODB.Connection
Public RecSQL As ADODB.Recordset

Private Sub Command1_Click()

On Error GoTo Ver

Set BD = New ADODB.Connection
BD.ConnectionString = "driver={MySQL ODBC 3.51 Driver};" & _
"Server=" & Text1 & ";" & _
"Port=" & Text2 & ";" & _
"Database=" & Text3 & ";" & _
"User=" & Text4 & ";" & _
"Password=" & Text5 & ";" & _
"Option=3;"

BD.Open

MsgBox "Conexión establecida!!!", vbExclamation, "Conexión"

Exit Sub
Ver:
MsgBox "Nº de error: " & Err.Number & " | " & Err.Description, vbCritical, "Control de errores"
Err.Clear
End Sub


Private Sub Command2_Click()
On Error GoTo Ver

Set RecBD = New ADODB.Recordset
RecBD.Open "select * from categories", BD, adOpenStatic, adLockOptimistic

Text6.Text = RecBD.Fields("id")
Text7.Text = RecBD.Fields("name")


Exit Sub
Ver:
MsgBox "Nº de error: " & Err.Number & " | " & Err.Description, vbCritical, "Control de errores"
Err.Clear

End Sub

Hola, aun así, a pesar de lo que te dice David el Grande, solamente mostraría los datos del último registro en Text6 y Text7.
Si quieres mostrar todos los registros puedes utilizar un control DataGrid

Código:
Set RecBd = New ADODB.Recordset
RecBd.CursorLocation = adUseClient
RecBd.Open "select * from categories", BD, adOpenStatic, adLockOptimistic
If RecBd.RecordCount = 0 Then
    MsgBox "No hay registros"
    Exit Sub
End If
Set DataGrid1.DataSource = RecBd
  #4 (permalink)  
Antiguo 21/11/2008, 05:35
 
Fecha de Ingreso: junio-2006
Mensajes: 166
Antigüedad: 17 años, 10 meses
Puntos: 3
Respuesta: consulta mysql

queria agradecerles porque gracias a ustedes pude resolver este inconveniente, ahora funciona perfecto!!!
muchas gracias!!
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 04:15.