Lo que les traigo es un pequeño tuto de cómo hacer una conexión a bases de datos de mysql con el querido vb 6 y pues más que nada es para la gente que apenas va empezando en estas cosas y es pero que les sirva de apoyo ya que es algo muy sencillo.
Bueno para ahcer la conexion yo hice un boton de conectar y dentro de este meti el siguiente codigo,del cual yo jalo los datos de pass y user desde dos txt, para que solo yo pueda entrar a mi bd, tambien se pueden jalar los demas datos como son el nombre de la bd, el puerto, hasta en en que maquina esta la bd eso hace que el programita funcione con cualquier bd que use MySQL. Pero yo les voy a mostar un caso espesifico para que sea un poco mas sencillo.
otra cosa para que esto funcione tenemos que agregar una dependencia a nuestro proyecto que seria la "Microsoft ActiveX Data Objects 2.8 Library"
y un objeto que se llama datagrid para mostrar nuestras tablas.
nota: las variables
conexion y
rs son publicas para que se puedan utilizar en todo el formulario
Private Sub Command1_Click()
'declaramos una variable del tipo ADODB.Connection que nos permitira conectarnos nuestra bd
Set conexion = New ADODB.Connection
'ahora le asignamos a nuestra variable la propiedad de ConnectionString_
'que es la cadena de conexion a nuestra bd_
'y ai iria la cadena que esta despues del = entre ""
'Eso no va cambiar esa cadena no la da mysql para poder conectarnos a bd de sus servidor de db_
'en esta caso es 5.0.3
conexion.ConnectionString = "driver={MySQL ODBC 3.51 Driver};server=localhost;uid=" & user.Text & ";pwd=" & pass.Text & ";database=inventario;connection="
' Despues de poner la cadena de conexion la abrimos con Open
conexion.Open
' y ya con esto estamos conectados a la BD
End Sub
Bueno ahora ya estando coenctados pues lo que queremos es ver el contenido de las tablas para eso yo utilize un combobox para seleccionar la tabla que yo quiera ver y mostrarla en un datagrid, En mi caso son tres tablas llamdas
memorias,comunicaciones y micros, para eso meti el codigo en el evento click del combo box que es cuando selecciona el contenido del combo, en tonces solo lo que se hace es preguntar que item selecciono y entrar a esa parte del codigo entonces quedaria asi:
Private Sub Combo1_Click()
'creamos una varaible y le asignamos un ubjeto recordset
Set rs = New ADODB.Recordset
'preguntamos que tabla selecciono
If Combo1.Text = "Memorias" Then
' aqui se hace un sivlo para poder leer el contenido completo de la tabla seleccionada
With rs
.ActiveConnection = conexion
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Open "select * from Memorias"
End With
' se termina el siclo, se leen los datos y se imprimen en el data grid de_
' la siguiente manera
Set DataGrid1.DataSource = rs
' a qui solo acomode el ancho de las columnas para que los datos se mostraran correctamente
DataGrid1.Columns(0).Width = 200
DataGrid1.Columns(1).Width = 500
DataGrid1.Columns(2).Width = 5000
DataGrid1.Columns(3).Width = 1000
tabla = 1
End If
If Combo1.Text = "Comunicaciones" Then
With rs
.ActiveConnection = conexion
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Open "select * from Comunicaciones"
End With
Set DataGrid1.DataSource = rs
DataGrid1.Columns(0).Width = 200
DataGrid1.Columns(1).Width = 1800
DataGrid1.Columns(2).Width = 1000
DataGrid1.Columns(3).Width = 5000
tabla = 2
End If
If Combo1.Text = "Micros" Then
With rs
.ActiveConnection = conexion
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockOptimistic
.Open "select * from Micros"
End With
Set DataGrid1.DataSource = rs
DataGrid1.Columns(0).Width = 200
DataGrid1.Columns(1).Width = 800
DataGrid1.Columns(2).Width = 5000
tabla = 3
End If
End Sub
Esta es la interface de la aplicacion
Ahora para doder modificar las tablas lo que quice es poder hacerlo desde el datagrid, entonces me cree un menu con las opxiones de
Agregar registro, borrar y guardarpara poder crear un registro nuevo seria asi:
'con esto se abre un registro nuevo y en el data grid les aparesera esos campos_ 'vacios para lleabrlos
rs.AddNew
Despues solo se le tiene que guardar y listo
con eso se actualizan los cambios y se guardan en nuestra bd
rs.Update
Ahora el boton de borrar
Private Sub baja_Click()
'Aqui le puse una pregunta por que hay veces que uno preciona la opcion sin querer
'y para evitar borrar un registro indeseadamente le puse la aprovacion esa
Dim x As Integer
x = MsgBox("desea borrar el registro", vbYesNo + vbQuestion, "aviso")
'aqui se pregunta si se eligio que si en el msgbox
If x <> vbYes Then Exit Sub
'se borra el registro
rs.Delete
'se mueve el puntero al registro siguiente
rs.MoveNext
' se pregutna si estas hasta el final de la tabla muevete un registro atras
If rs.EOF Then
rs.MoveLast
End If
MsgBox "El registro se borro correctamente", vbInformation
End Sub
Bueno espero que les sea de utilidad a los que van empesando con esto ya que creo que es la manera mas sencilla de poder ver tablas y agregar y borrar registro de una BD....
Esta no es la mejor de tratar con BD MySQL pero si creo que es la mas sencilla es por eso que la puse, yo recomiendo que se usen mejor sentencias sql para todo(busquedas, borrado, añadir,vistas,etc....), pero como en un principio dije que es para las personas que van empesando y creo que con esto se darian una idea de como es esto