JTagua

Inicio » JDBC » JDBC + ODBC (MsAccess con DSN)

JDBC + ODBC (MsAccess con DSN)


El ODBC Open DataBase Connectivity es un standard creado por Microsoft para manejar ciertos tipos de bases de datos desde diferentes entornos de programación e independizándolos de éstos y por tanto evitando la especificidad de cada uno de los SGBD. Hoy por hoy, existe soporte ODBC para una multitud de bases de datos, las mas significativas En la actualidad existen ODBC para muchos sistemas de bases datos, tales como Informix, Access, PostgreSQL, MySQL, Oracle y SQL Server.

Existiendo ODBC drivers oportuno, éste puede utilizarse para aplicaciones Java por medio de el puente JDBC-ODBC proporcionado por Sun. Usar el puente JDBC-ODBC no es una solución ideal dado que:

  1. Requiere de la instalación de drivers ODBC y entradas de registro.
  2. Los drivers ODBC a su vez son implementados nativamente lo que compromete el soporte multiplataforma.

El puente es por si mismo un driver basado en tecnología JDBC que está definida en la clase sun.jdbc.odbc.JdbcOdbcDriver.

El puente JDBC-ODBC debe ser considerado como una solución transitoria. Con el desarrollo de drivers puros en Java, el puente se volverá innecesario.

Lo ideal es “Java Puro” y por ello, no al código nativo y no a las características de plataforma dependiente. Sin embargo puede utilizarse si se requiere desarrollar de forma rápida sin necesidad de esperar a que el fabricante de la base de datos utilizada proporcione el driver JDBC. Los drivers parcialmente nativos, como el puente JDBC-ODBC, le permite crear programas que pueden fácilmente ser adaptados a drivers puros en Java tan pronto como estén disponibles.

En términos de programación JDBC, el manejar ODBC obliga, a parte de definir un DSN (fuente de datos), a utilizar un driver especial, se trata de

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

Mientras que la cadena de conexión necesaria para crear el objeto connection será,

con = DriverManager.getConnection(“jdbc:odbc:DNSPruebas”, “root”, “root”);

este driver es específico, así como tasmbién lo es para cada una de las distintas bases de datos arriba enumeradas.

EJERCICIO1:

Vamos a realizar un ejercicio sencillo con MsAccess vía ODBC. Se tratará de crear una tabla en una base de datos ya existente y asociada a un DSN (o fuente de datos) al que llamaremos DNSPruebas, también crearemos una tabla e insertaremos varios registros.

Comenzaremos creando la base de datos, para ello abrimos una sesión de MsAccess y creamos la base de datos vacía denominada “DNSPruebas”,

Inmediatamente después creamos el DSN denominado DSNPruebas, para ello vamos al panel de control Windows y hacemos click sobre Herramientas Administrativas, es decir,

y después hacemos click en orígenes de Datos (ODBC),

aparecerá

Seleccionamos la pestaña “DNS de Sistema” y hacemos “Agregar”,

Seleccionamos el driver correspondiente a “Microsoft Access”, y hacemos Finalizar,

Nombramos el origen de datos como “DNSPruebas” y seleccionamos la base de datos DNSPruebas creada con anterioridad,

Aceptamos y finalmente,

Abrimos ahora una sesión de NetBeans y generamos un nuevo proyecto al que podríamos llamar “jdbc_odbc_msaccess_dsn”. Cuando aparezca la plantilla del index.jsp sustituimos el código por el siguiente otro:

Consideraciones:

1.-Vea que tenemos dos bloques try …catch, el primero de ellos controla y supervisa los errores de clase no encontrada y posibles errores en la creación del objeto connection. Pruebe, provocando un error intencionado este bloque.

2.-El segundo bloque try … catch controla las operaciones de creación de la tabla, las inserciones de registros y la instrucción select. Pruebe a provocar un error intencionado.

3.-Ensaye eliminar la tabla con la instrucción del sql “delete”.


1 comentario

  1. […] el ejercicio1 indicado en el Tutorial de JSP (19) realizando estos cambios […]

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: