Escrito por: Víctor M. Saldaña Núñez
La forma de poder hacer conexión a una base de datos de Access con Visual basic es utilizando su motor de ADO de la siguiente manera:
Cuando estamos trabajando con Visual Basic ver. 6.0 , es importante hacer referencia a:
Microsoft ActiveX Data Objects 2.1 Library o en su defecto a Microsoft ActiveX Data Objects 2.5 Library o en su defecto a Microsoft ActiveX Data Objects 2.6 Library.
Para esto seleccionaremos en el menú principal del lenguaje en la opción “Proyecto”, aparecerá el submenú y seleccionará la opción “Referencias”, les presentará una ventana donde se encontraran con las referencias que ya están seleccionadas mostrándose con una paloma en un cuadrito al principio y después las referencias que no están seleccionadas se mostraran con un cuadrito en blanco.
Una vez que se ha activado el acceso a esta referencia entonces ya se puede efectuar la creación de las variables que formaran parte en el proceso de conexión como son:
En el área de generales, poner abajo del option explicit lo siguiente:
Dim oCnn as new Adodb.Connection
Dim oRs as new Adodb.Recordset
Puedes realizarlo creando una función o un procedimiento de conexión exclusivamente, el siguiente ejemplo que indicare se efectuará en base a un procedimiento el cual cada vez que se desee crear la conexión solo se le llamará a este procedimiento. Para esto, deberá contener las siguientes instrucciones:
Sub sConecta()
strConex = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Textra\DbTextra\Hextras.mdb;Jet OLEDB:Database Password=heper2008"
On Error GoTo Cierra_Conex
With cnnConec
.ConnectionString = strConex
.ConnectionTimeout = 300
.Open
strMensaje = "Conectado"
strRespuesta = MsgBox(strMensaje)
Exit Sub
End With
Cierra_Conex:
Set cnnConec = Nothing
End Sub
El procedimiento “sConecta”, toma los datos del proveedor que se va a utilizar para abrir la conexión que en este caso es Microsoft.Jet.OLEDB.4.0; este permitirá abrir los archivos de Access 2000, 2003. El Proveedor Microsoft.Jet.OLEDB.3.5 permitirá abrir los archivos de Access 95 y 97, esto se dio de esta forma ya que según se fue avanzando y mejorando, Microsoft fue actualizando su proveedor de conexión para este tipo de archivo. Actualmente para hacer conexión a un archivo Access 2007 se utiliza con el siguiente Proveedor “Microsoft.ACE.OLEDB.12.0”
Una vez que se tiene el procedimiento “sConecta”, puedes efectuar el acceso a una tabla dada de la base de datos conectada, efectuando por ejemplo una consulta, como se muestra en el siguiente ejemplo.
Private Sub cmdConsulta_Click()
Call sConecta
strSql = "Select * from hext_catper order by cper_nombrec"
rsDato.Open strSql, cnnConec, adOpenDynamic, adLockOptimistic
With rsDato
.MoveFirst
intNum = 0
cboDatos.Clear
cboDatos.AddItem ""
cboDatos.ItemData(cboDatos.NewIndex) = intNum
Do Until .EOF
intNum = intNum + 1
cboDatos.AddItem .Fields("cper_NombreC") & Space(10) & "|" & .Fields("cper_clave")
cboDatos.ItemData(cboDatos.NewIndex) = intNum
If .EOF Then
Exit Do
Else
.MoveNext
End If
Loop
rsDato.Close
Set rsDato = Nothing
Exit Sub
End With
End Sub
No hay comentarios:
Publicar un comentario