Transcript No Slide Title
Acceso a Bases de Datos con Java
JDBC
03 de Mayo de 2006
Índice
• • • • • • Sistemas de Gestión de la Información – Modelo Relacional Introducción a SQL Conectividad – ODBC / JDBC Controladores (Drivers) JDBC JDBC 3.0 API Empezando a trabajar con JDBC
Índice
• • • • • •
Sistemas de Gestión de la Información
–
Modelo Relacional
Introducción a SQL Conectividad – ODBC / JDBC Controladores (Drivers) JDBC JDBC 3.0 API Empezando a trabajar con JDBC
Sistemas de Gestión de la Información
• • • Base de Datos – Forma de almacenamiento de información – – Estructura y Datos Modelo Relacional Gestor de Base de Datos – Aplicación para manipular bases de datos – Oracle, Access, ...
SQL – Structured Query Language – Lenguaje estándar para crear, examinar y manipular bases de datos relacionales – Permite manipular bases de datos en diferentes sistemas que soporten el estándar
Modelo Relacional (Tablas)
Campo, Atributo, Columna Registro, Fila
Modelo Relacional (Relaciones)
Tabla Clave Relación
Índice
• • • • • • Sistemas de Gestión de la Información – Modelo Relacional
Introducción a SQL
Conectividad – ODBC / JDBC Controladores (Drivers) JDBC JDBC 3.0 API Empezando a trabajar con JDBC
Introducción a SQL
• Recuperar información •
SELECT WHERE
[
ALL
|
DISTINCT
]
FROM
ORDER BY
ASC
[,
ASC
|
DESC
]]...] |
DESC
] Almacenar información •
INSERT INTO
[(
VALUES
DELETE FROM
WHERE
UPDATE
SET
Índice
• • • • • • Sistemas de Gestión de la Información – Modelo Relacional Introducción a SQL
Conectividad
–
ODBC / JDBC
Controladores (Drivers) JDBC JDBC 3.0 API Empezando a trabajar con JDBC
Conectividad - ODBC
• ODBC – Open DataBase Connectivity – Interface de aplicaciones (API) para acceder a datos en sistemas gestores de bases de datos utilizando SQL
Aplicación Cliente Data Source Name (DSN) ODBC Driver Manager ODBC Driver ODBC Driver ODBC Database
Conectividad - JDBC
• • • JDBC – Marca registrada –
Java DataBase Connectivity
API de Java para ejecutar sentencias SQL JDBC posibilita básicamente tres cosas: – Establecer una conexión con una base de datos desde Java – – Enviar sentencias SQL a través de dicha conexión Procesar los resultados
JDBC vs. ODBC
• • • ¿Por qué no usar ODBC desde Java?
– Se puede usar ODBC desde Java – Puente JDBC-ODBC ¿Por qué se necesita JDBC?
– ODBC no es apropiado para su uso directo desde Java porque usa una interfaz en C – – – Una traducción de la ODBC API en C a una API en Java no sería deseable ODBC es duro de aprender Una API en Java como JDBC es necesaria para conseguir una solución “puramente Java” JDBC API es una interfaz natural de Java
Índice
• • • • • • Sistemas de Gestión de la Información – Modelo Relacional Introducción a SQL Conectividad – ODBC / JDBC
Controladores (Drivers) JDBC
JDBC 3.0 API Empezando a trabajar con JDBC
Controladores (Drivers) JDBC
Índice
• • • • • • Sistemas de Gestión de la Información – Modelo Relacional Introducción a SQL Conectividad – ODBC / JDBC Controladores (Drivers) JDBC
JDBC 3.0 API
Empezando a trabajar con JDBC
JDBC 3.0 API
• La JDBC 3.0 API comprende 2 paquetes: – java.sql
– javax.sql (añade capacidades de la parte servidor) • Básicamente, los pasos a seguir son: – Registrar un driver: • Clase DriverManager – – – Establecer una conexión con la base de datos: • Interface Connection Enviar sentencias SQL a la base de datos: • Interface Statement Procesar los resultados de las consultas • Interface ResultSet
Utilización de JDBC 3.0 API
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String url = ″jdbc:odbc:wombat″; Connection con = DriverManager.getConnection(url); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(″SELECT a, b, c FROM Table2″); While(rs.next()){ int i = rs.getInt( a ); String s = rs.getString( b ); Float f = rs.getFloat( c ); System.out.println( ROW= + i + } + s + + f);
JDBC 3.0 API
Connection
createStatement prepareStatement prepareCall
Statement
subclasses
PreparedStatement
subclasses
CallableStatement
executeQuery
Data Types
executeQuery getXXX
ResultSet
executeQuery getMoreResults getResultSet
Índice
• • • • • • Sistemas de Gestión de la Información – Modelo Relacional Introducción a SQL Conectividad – ODBC / JDBC Controladores (Drivers) JDBC JDBC 3.0 API
Empezando a trabajar con JDBC
Empezando a trabajar con JDBC
• • • • Base de datos en formato Access – Base de Datos: Libros.mdb
– – Tabla: Datos Campos: Código, Titulo, Autor Creación de un Data Source Name (DSN) Ejemplo de aplicación JDBC simple Ejemplo con excepciones y MetaData