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

mysql y Visual Basic 2005

Estas en el tema de mysql y Visual Basic 2005 en el foro de Visual Basic clásico en Foros del Web. Aupi estoy empezando a manejar el visual basic 2005 y tengo un problemon y esque no consigo conectar y saber como hacer una consulta a ...
  #1 (permalink)  
Antiguo 20/04/2008, 14:17
 
Fecha de Ingreso: marzo-2008
Mensajes: 82
Antigüedad: 16 años, 1 mes
Puntos: 0
mysql y Visual Basic 2005

Aupi estoy empezando a manejar el visual basic 2005 y tengo un problemon y esque no consigo conectar y saber como hacer una consulta a la base de datos de mysql.

He instalado el ADODB y desde ahi me va perfecto.

En el formulario tengo puesto lo siguiente
Código:
   Dim cn As New ADODB.Connection
    Dim rs As New ADODB.Recordset

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        
        Dim conectarse_mysql As String
        conectarse_mysql = "Driver={MySQL ODBC 3.51 Driver};Server=****;Port=3306;Option==131072 ;Stmt=;Database=test;Uid=root;Pwd=*****;"
        cn.ConnectionString = conectarse_mysql
        cn.Open()
        Dim strqry As String
        strqry = "select * from prueba where id=1"
        rs = cn.Execute(strqry)

    
    End Sub
Creo q conectar conecta pero no se como hacer la consulta, si alguien me puede completar algo o guiarme un poco se lo agradeceria. Almenos para ver algo en consola o en un cuadro de texto q esto es demasiado novedoso.
Gracias de antemano.
  #2 (permalink)  
Antiguo 21/04/2008, 01:36
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
Re: mysql y Visual Basic 2005

Hola, si la conexión ha sido buena, para mostrar los datos del recordset p.e. en control DataGridView, puedes hacer lo siguiente:

Le agregas un Control BindingSource y un DataGridView y a continuación de la apertura del recordset, le pones éste código:

Código:
Dim oDa As OleDbDataAdapter = New OleDbDataAdapter
Dim oDs As New DataSet
oDa.Fill(oDs, rs, "prueba")
Me.BindingSource1.DataSource = oDs.Tables(0)
Me.DataGridView1.DataSource = Me.BindingSource1
Y eso es todo.-. Un saludo.
  #3 (permalink)  
Antiguo 21/04/2008, 16:50
 
Fecha de Ingreso: marzo-2008
Mensajes: 82
Antigüedad: 16 años, 1 mes
Puntos: 0
Re: mysql y Visual Basic 2005

Avellaneda en primer lugar muchisimaas gracias por conestar.

EDITO: que funciona!!! increible!!!!

me puedes explicar un poco paso a paso que has hecho sino es molestia? para q es el bindingsource?

Gracias de nuevo

Última edición por riscking; 21/04/2008 a las 17:46
  #4 (permalink)  
Antiguo 22/04/2008, 00:54
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
Re: mysql y Visual Basic 2005

Bueno, intentaré explicartelo paso a paso:

Primero creamos un objeto TableAdapter (El objeto TableAdapter proporciona comunicación entre la aplicación y la base de datos mediante instrucciones SQL o Procedimientos Almacenados).

A continuación creamos el DataSet para almacenar temporalmente los datos y poder mostrarlos en el DataGridView.

Cargamos ambos con los datos de la tabla que queremos mostrar y los enlazamos al BindingSource y éste al DataGrid.

El componente BindingSource sirve para enlazar un control a un origen de datos (sería como el control Adodc de VB6).

No es absolutamente necesario en este caso, ya que puedes enlazar directamente el DataGrid con el DataSet prescindiendo del BindingSource. Prueba con éste código y verás que funciona igual:

Código PHP:
oDa.Fill(oDsrs"prueba")
DataGridView1.DataSource oDs.Tables(0
Un saludo
  #5 (permalink)  
Antiguo 31/07/2008, 10:06
 
Fecha de Ingreso: julio-2008
Mensajes: 4
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: mysql y Visual Basic 2005

tengo la vercion vb6 y mysql6 de este foro obtube como hacer la coneccion pero tengo un problema para realizar consultas
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 19:47.