Conectar MS Access y Java

Para establecer una conexion entre estas dos herrmientas solo se necesita unas cuantas lineas de código, a diferencia de otras bases de datos, no se necesita importar ningún paquete especial a nuestro proyecto.

Como no se dispone de ningún paquete especial solo se invoca la siguiente línea:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

También, necesitamos saber la localización física de la base de datos, se dispone de dos opciones:
Ubicacición absoluta: “C:\\\\manix\\Escritorio\\mi_db.mdb”
Ubicacición relativa (la carpeta raíz del proyecto java): “mi_db.mdb”;

Luego debemos crear la url correctamente, esta url es recibida por el objeto conexión junto con el usuario y contraseña de la base de datos a la cual queremos acceder.

La url completa sería:

Entonces, la conexión quedaria de la siguiente forma:

 String url = "jdbc:odbc:MS Access Database;DBQ=mi_db.mdb"; 

En la línea anterior suponemos que mi_db.mdb es el nombre de la base de datos a la que queremos acceder, pero ésta puede cambiar según la dirección física mencionada anteriormente.

La conexión completa sería:

//creamos la url
String url = "jdbc:odbc:MS Access Database;DBQ=mi_db.mdb";

//se carga el driver
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

// se conecta a la base de datos específica en la url, seguidamente el usuario y la
// contraseña de la de la base de datos, en este no se usan y por eso se dejan vacíos
Connection con = DriverManager.getConnection (url, "", "");

A pesar de que ya esta probado muchas veces tiene ciertos conflictos de conexión para Access 2003 y Access 2007. Además debemos configurar desde Access el acceso a los datos desde aplicaciones externas.

Luego de crear la conexión, puedes ver como hacer consultas a una base de datos usando el objeto Connection

2 comments

  1. jggl_9158

    haber si pones un ejemplo con una bd con contraseña, que e intentado ponerle contraseña a mi bd pero en la conexion me da error

Leave a Reply