fernando alonso blázquez acceso a bases de datos con java jdbc 01 de abril de 2004
TRANSCRIPT
![Page 1: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/1.jpg)
Fernando Alonso Blázquez
Acceso a Bases de Datos con
Java
JDBC01 de Abril de 2004
![Page 2: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/2.jpg)
Indice
• 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
![Page 3: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/3.jpg)
Indice
• 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
![Page 4: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/4.jpg)
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
![Page 5: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/5.jpg)
Modelo Relacional (Tablas)
Campo, Atributo, Columna
Registro, Fila
![Page 6: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/6.jpg)
Modelo Relacional (Relaciones)Tabla
Relación
Clave
![Page 7: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/7.jpg)
Indice
• 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
![Page 8: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/8.jpg)
Introducción a SQL
• Recuperar informaciónSELECT [ALL | DISTINCT] <seleccion> FROM <tablas> WHERE <condiciones de seleccion> [ORDER BY <columna> [ASC | DESC][,<columna> [ASC | DESC]]...]
• Almacenar informaciónINSERT INTO <nombre tabla> [(<nombre columna> [,<nombre columna>]...)] VALUES (<expresion> [,<expresion>]...)
• Eliminar datosDELETE FROM <nombre tabla> WHERE <condicion busqueda>
• Actualizar datosUPDATE <nombre tabla> SET <nombre columna> = ( <expresion> | NULL )[, <nombre columna> = ( <expresion> | NULL )]... WHERE <condicion
busqueda>
![Page 9: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/9.jpg)
Indice
• 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
![Page 10: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/10.jpg)
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
ODBC Driver Manager
ODBC Driver
ODBC Database
Data Source Name (DSN)
ODBC Driver
![Page 11: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/11.jpg)
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
![Page 12: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/12.jpg)
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 interface 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 interface natural de Java
![Page 13: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/13.jpg)
Indice
• 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
![Page 14: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/14.jpg)
Controladores (Drivers) JDBC
![Page 15: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/15.jpg)
Indice
• 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
![Page 16: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/16.jpg)
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
![Page 17: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/17.jpg)
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);}
![Page 18: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/18.jpg)
JDBC 3.0 API
subclassessubclasses
Connection
CallableStatementPreparedStatementStatement
ResultSet
Data Types
createStatement prepareStatement prepareCall
executeQuery
executeQuery executeQuery
getXXX getMoreResultsgetResultSet
![Page 19: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/19.jpg)
Indice
• 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
![Page 20: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/20.jpg)
Empezando a trabajar con JDBC
• Base de datos en formato Access– Base de Datos: Libros.mdb– Tabla: Datos– Campos: Codigo, Titulo, Autor
• Creación de un Data Source Name (DSN)
• Ejemplo de aplicación JDBC simple• Ejemplo con excepciones y MetaData
![Page 21: Fernando Alonso Blázquez Acceso a Bases de Datos con Java JDBC 01 de Abril de 2004](https://reader036.vdocuments.co/reader036/viewer/2022062318/552d4c4c550346e4798b465e/html5/thumbnails/21.jpg)
Fernando Alonso Blázquez
Acceso a Bases de Datos con
Java
JDBC01 de Abril de 2004