Nueva versión propia de la clase de conexión a mysql aquí
En este post resumire un poco las distintas cosas que se pueden hacer, con mucho codigo y poca explicacion, porque de hecho no hay mucho que explicar, las consultas son con SQL puro y duro, y el visual… es visual!
Antes de nada recordar que para establecer una conexion con la base de datos se requiere la DLL que os adjunto. Una vez la tengais la colocais donde os vaya mejor, y desde el proyecto de visual basic haceis:
Proyecto->Agregar referencia…-Examinar, y la cargais.
La DLL la he colgado aqui:
http://www.pooox.es/MySql_Data.rar
Una vez hecho esto os cuento que hice yo:
1. Añadi la siguiente linea en el codigo de los formularios que manejan algo con base de datos:
Imports MySql.Data.MySqlClient
2. Hice una clase que manipulaba los datos, la cual la instancio desde el Form_Load(). La clase la llamo ‘consultas’, lo siguiente es un copiar y pegar de mi codigo:
http://www.pooox.es/consultas.txt
3. Desde el formulario principal, creo una variable del tipo consultas, la hago como global por preferencia mia. Despues uso la clase cuando necesito usarla, creo que no tiene perdida. Hice que las SELECT de la classe consultas devolviera una variable del tipo MysqlDataReader, con lo que siempre que se quiera recuperar los datos de una consulta habra que crear dicha variable en el formulario, o hacerla global y te olvidas.
Aqui os dejo la primera parte de mi formulario por si hay dudas:
Imports MySql.Data.MySqlClient
Public Class Form1
Dim cons As consultas
Dim lectura As MySqlDataReader
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles MyBase.Load
cons = New consultas("localhost", "nick","contraseña")
lectura = cons.consulta("grupos")
Dim i As Integer
Try
For i = 0 To lectura.FieldCount - 1
lectura.Read()
ComboBox1.Items.Add(lectura.GetValue(1).ToString())
Next
Catch ex As MySqlException
End Try
lectura.Close()
End Sub
Si sirve de referencia, cabe decir que todo esto lo he hecho en local, con el xampp instalado que ya tiene el apache y el phpmyadmin instalados.
Para cualquier duda o sugerencia sobre esta mini explicacion hacermelo saber!
Espero que os sirva de mucho!