Buscar en el blog

lunes, 25 de agosto de 2014

Continuamos con nuestra agenda electrónica, una vez que ya hemos realizado la interfaz de nuestra aplicación, debemos tener en cuenta que estamos realizando nuestro programa en una aplicación externa a Access, por lo tanto debemos realizar una serie de funciones y procedimientos que nos permitan entre otras cosas conectarnos y desconectarnos de nuestra base de datos de access, por esto, lo primero que vamso a hacer son las funciones que nos permitan conectarnos y desconectarnos de la base de datos.

Para ello realizaremos lo siguiente:

Clic derecho en la carpeta llamada clases - Agregar - Clase.

A esta clase la hemos llamado ConexBD. Una vez tenemos la clase creada dentro de ella colocaremos el siguiente código.

Primero importamos el namespace System.Data.OleDB y después insertamos el código Comenzando por la variable Conex que almacenará una conexión.

Con este código me despido de este artículo para continuar en el siguiente.

Imports System.Data.OleDB
Public Class ConexBD
Public Conex As OleDbConnection 'Almacenará nuestra conexion, a la cual entre parentesis le pasaremos la cadena de conexion


'Creamos una instancia de la clase con una nueva conexion 
Sub New()
        Conex = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Application.StartupPath & "\Agenda Multiusuario.accdb")
    End Sub

'Función que nos conecta a la base de datos. Esta es una función que nos devuelve un resultado verdadero o falso. Verdadero
    'si la conexión se realiza y falso si no se realiza la conexión. Ademas esta envuelto en una estructura Try - Catch - End Try que nos permite capturar algún tipo de error en caso de que suceda.

 Function Conectar() As Boolean
        Try
            'Si la ruta del archivo existe entonces...
            If System.IO.File.Exists(Application.StartupPath & "\Agenda Multiusuario.accdb") Then
                'si la conexión esta cerrada que la abra y entonces devolverá verdadero (true)
                If Conex.State = ConnectionState.Closed Then Conex.Open()
            End If
            Return True
        Catch ex As Exception 'Si ocurre cualquier error ejecutará el catch y devolvera falso
            MsgBox("No se puede conectar con la base de datos, " & vbCr & ex.ToString, vbCritical, "Conexión fallida")
            Return False
        End Try
    End Function

'Desconectar de la base de datos. Devolvera true si se desconecta y false si no se desconecta. Como la anterior la envolvemos en una estructura try - catch - end try para capturar errores si es que los hubiera.

Function Desconectar() As Boolean
        Try 'intentamos:
            'si la conexión esta abierta, que la cierre y devuelva true.
            If Conex.State = ConnectionState.Open Then Conex.Close()
            Return True
        Catch ex As Exception 'En caso de que haya algún error, ejecutará el catch y devolvera false.
            MsgBox("La conexión actual con la base de datos se encuentra cerrada," & vbCr & ex.ToString, vbCritical, "Desconexión fallida")
            Return False
        End Try
    End Function
End Class

0 comentarios:

Publicar un comentario

 
Solicitamos su permiso para obtener datos estadísticos de su navegación en esta web, en cumplimiento del Real Decreto-ley 13/2012. Si continúa navegando consideramos que acepta el uso de cookies. OK | Más información