MS Access 2003: Conéctese a Oracle usando código VBA

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

MS Access 2003: Conéctese a Oracle usando código VBA

Este tutorial de MSAccess muestra cómo conectarse a Oracle mediante código VBA en Access 2003 (con capturas de pantalla e instrucciones paso a paso).

P: Estoy desarrollando una aplicación que utiliza Access 2003/XP/2000/97 como front-end y Oracle como base de datos de back-end. Me encontré con un escenario en el que quiero suprimir el mensaje de la ventana “Conexión del controlador ODBC” que solicita un nombre de usuario y una contraseña para conectarse a una base de datos de Oracle.

Así que creé un formulario llamado “Iniciar sesión”, pero necesito ayuda para escribir el código VBA para conectarme a Oracle. ¿Me puedes ayudar?

Respuesta: Para conectarse a Oracle como se describe anteriormente, primero debe crear una conexión ODBC a la base de datos de Oracle utilizando el controlador {Microsoft ODBC para Oracle}.

Para hacer esto, vaya al icono ODBC de origen de datos en el Panel de control y cree un nuevo origen de datos utilizando el controlador {Microsoft ODBC para Oracle}.

Configure su conexión ODBC.

En este ejemplo, configuramos una fuente de datos denominada AAAA, el nombre de usuario BBBB y un servidor de Oracle denominado CCCC. Debe configurar la conexión ODBC con su propia configuración.

A continuación, abra su base de datos de Access, haga clic en la pestaña Módulos y cree un nuevo módulo.

Pegue el siguiente código:

Function OracleConnect() As Boolean

   Dim ws As Workspace
   Dim db As Database
   Dim LConnect As String

   On Error GoTo Err_Execute

   'Use {Microsoft ODBC for Oracle} ODBC connection
   LConnect = "ODBC;DSN=AAAA;UID=BBBB;PWD=DDDD;SERVER=CCCC"

   'Point to the current workspace
   Set ws = DBEngine.Workspaces(0)

   'Connect to Oracle
   Set db = ws.OpenDatabase("", False, True, LConnect)

   db.Close

   OracleConnect = True

   Exit Function

Err_Execute:
   MsgBox "Connecting to Oracle failed."
   OracleConnect = False

End Function

Tenga en cuenta que debe personalizar las siguientes líneas de código:

LConnect = "ODBC;DSN=AAAA;UID=BBBB;PWD=DDDD;SERVER=CCCC"

de modo que:

AAAA es el nombre de la fuente de datos ODBC que configuró.
BBBB es el nombre de usuario que utilizará para iniciar sesión en Oracle.
CCCC es el nombre de su servidor Oracle.
DDDD es la contraseña que utilizará para iniciar sesión en Oracle

Si después de probar este ejemplo obtiene un error “indefinido” en la declaración “Dim db as Database”, debe seguir algunas instrucciones adicionales.