Conexión Java y Microsoft Access 2010 desde Netbeans en Windows 7

Hola a todos!!, esta pubicación está dedicada a todos
pero en especial a un compañero de clases; William, bueno empecemos mencionando lo que necesitamos para el correcto funcionamiento de este ejemplo: Microsoft Access, en cualquiera de sus versiones ya sea anteriores(2003) como posteriores (trabajé con la versión 2010), lo que cambia es únicamente las extensiones con las que se guarda una Base de Datos. Una vez abierto Microsoft Access procedemos a crear la Base de Datos, la Tabla y luego rellenamos algunos datos.

*Nota 01: Si no logras cambiar el nombre de la BD a tu preferencia, hazlo ubicando el archivo origen. *Nota 02: Observa que la extensión de la BD es ".accdb" (esto en versiones superiores desde M. Access 2007), cosa que en versiones inferiores al 2007 es ".mdb". *Nota 03: Guarda la BD en la dirección por defecto que Access tiene asignado en el sistema

Con lo cual deberá quedar de la siguiente manera: Ya tenemos la base de datos! Bueno ahora vamos a configurar el servicio como en los otros casos (Derby).("C:\Users\"tu_usuario"\Documents" en Windows7). vamos al panel de control: Buscamos "ODBC" Ahora estamos en la pestaña "DSN Usuario" y escogemos tal como se muestra en la siguiente imagen: . puesto que esta publicación será para Conexiones indirectas o estáticas.

Veremos más adelante cómo ponerle una contraseña a nuestra BD!! Nos queda Aceptar y Aceptar!! . luego ubicaremos el archivo de la BD. osea pongamos o no contraseña da lo mismo).A nuestro DSN (Data Source Name) lo llamaremos "ADB". tal como se muestra en la imagen: Ahora vamos a agregarle una contraseña *Nota: Aunque por razones que están en proceso de investigación la contraseña que se pone aquí no se activa (por decirlo de otra forma.

Y claro la clase ConexionConsolaJavaAccess seguirá siendo la misma que de los proyectos anteriores (Conexión Java y Derby utilizando Netbeans 7 (ConexionConsolaJavaDerby)): Ahora ejecutando nuestra clase ConexionConsolaJavaAccess debería mostrarnos lo siguiente: . pueden modificar la contraseña de esta clase y con normalidad seguirá haciendo la conexión y consulta. si lineas arriba mencioné que daba igual ponerla o no. Se preguntarán qué hace esa contraseña ahí ("123456"). trabajamos conClass.Ahora veamos el código fuente del proyecto: Recibirá el nombre y la estructura de carpetas que se muestra a continuación: Veamos la clase Conexion que varió ligeramente: Como en este caso no hemos utilizando un driver como en casos anteriores. pues bien. lo que dije es cierto.forName(" ").

sobre la contraseña: ¿Eso quiere decir que nuestra base de datos está desprotegida?.Pero. La solución a ese problema se tiene que implementar desde el mismo Microsoft Access de la siguiente forma: Abrimos la base de datos "AccessBD.accdb" en "Abrir en modo exclusivo" como se muestra: Ahora hacemos lo siguiente: Finalmente ponemos la contraseña y damos Aceptar y Aceptar!!! . Pues cualquiera pudieseingresar a ella.

Lidia Silva _pĿª∫ŧ‼ќ_ġї®Ŀ _!!28 de mayo de 2 Conexion base de datos Access y Java JAN 29 Post Info Mouse en 06:24 10 comentarios . gracias! Ahhhhhhh y por favor si el material te fue útil ayúdame recomendando por las redes sociales. en :D. etc etc. háganlas llegar. Microsoft Access 2 comentarios: 1.Ahora sí verás que la contraseña hace efecto a nuestra BD "AccessBD... y si en la claseConexion modificas la contraseña. nuestro proyecto no tendrá permisos para acceder a la BD. Dudas y sugerencias. Publicado por Roger Soto en 21:30 Enviar por correo electrónicoEscribe un blogCompartir con TwitterCompartir con Facebook Etiquetas: Base de Datos. dando "Me gusta" en Javaenaccion en Facebook o "+1" en Google+.accdb". Java.

import java. es la iguiente: Clase: Access_connection.com/ * @author Mouse */ public class Access_connection { //contraseña a la base de datos si es que tuviera.logging. es enlazar la base de datos Access con Java utilizando la API JDBC de java y especificando el driver. /** * @web http://jc-mouse.blogspot. una de ellas es utilizando un Origen de Datos ODBC para utiliarlo como puente entra Access y Java. //driver para base de datos Access 2000.una forma mas directa. 2010 . ó.*.mdb o *.accdb static String dbName = "TU_BASE_DE_DATOS.dir") + "\\" + dbName + ". si no se deja vacio static String password = "". import java.Level. //direccion de la base de datos static String bd = System.logging.getProperty("user. la base de datos y el password (si es que tuviera) para realizar una conexion como se hizo con MySQL y Java.sql. 2007.Permalink Para poder acceder a una base de datos de Acces 2000-2010 de Microsoft.PWD=" + password. (Conexion a Base de datos) Nuestra clase java para poder realizar una conexion. //nombre de la base de datos Acces con extension *.java codigo fuente import java.util. podemos utilzar dos formas. 2003.util.mdb".Logger.

out. //si la conexion tuvo exito if (conn!=null){ System. *. listo").JdbcOdbcDriver").println("Conexión a base de datos "+bd+". termina la conexion a la base de datos public void desconectar(){ try { conn.println("La conexion a la " a terminado").forName("sun.static String url = "jdbc:odbc:. ex). } catch (SQLException ex) { Logger.out.accdb). } } /**Permite retornar la conexión*/ public Connection getConnection(){ return conn.jdbc.out.log(Level .class.DBQ=" + bd.close(). } } } base de datos " + bd + .println(e).getLogger(Access_connection. Connection conn = null. //obtenemos la conexión conn = DriverManager.out.println(e). } //como dice su nombre. }catch(ClassNotFoundException e){ System. null.SEVERE. } }catch(SQLException e){ System.getName()).odbc.DRIVER=Microsoft Access Driver (*. //conn = null.mdb.getConnection(url). System. public Access_connection() { try{ //obtenemos el driver para Access Class.

Access_connection. el cual nos retorna la direccion de nuestro proyecto (*. por ejemplo: "E:/mi base de datos/db. realiza la conexion para ambas versiones.La direccion a la base de datos se la realiza utilizando el comando "System.mdb". solamente se debe eliminar esa instruccion. esta clase.mdb y para las versiones recientes de access 2007-2010.JAR).getProperty("user. //se cierra la conexion access. fin? . para versiones antiguas 2000-2003 utiliza la extension *. osea: public class Main { public static void main(String[] args) { //se realiza la conexion Access_connection access = new Access_connection(). utiliza *. si se desea especificar otra dirección. es similar a la clase conexion MySQL Conexion a Base de datos. La forma de implementar esta clase.accdb.dir")". } } Access cuenta con dos extensiones para base de datos.java.desconectar().