View
225
Download
0
Category
Preview:
Citation preview
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
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
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– DBase, Access, Oracle, SQL Server, Derby,
MySQL, PostgreSQL, ...
• 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
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
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>
SQL con ExecuteSQL
java ExecuteSQL prueba "Select * from Productos"
CREATE TABLE FIRSTTABLE (ID INT PRIMARY KEY, NAME VARCHAR(12));
INSERT INTO FIRSTTABLE VALUES (10,'TEN');INSERT INTO FIRSTTABLE VALUES
(20,'TWENTY');INSERT INTO FIRSTTABLE VALUES
(30,'THIRTY');
SELECT * FROM FIRSTTABLE;
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
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
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
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
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
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
subclassessubclasses
Connection
CallableStatementPreparedStatementStatement
ResultSet
Data Types
createStatement prepareStatement prepareCall
executeQuery
executeQuery executeQuery
getXXX getMoreResultsgetResultSet
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
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
Derby: base de datos en Java
• Cloudscape de IBM es el proyecto Derby en Apache
• Instalación– Directorio javadb
• set DERBY_HOME=Q:\Java\javadb• set PATH=%DERBY_HOME%\bin;%PATH%
• Ejemplo de base de datos– %DERBY_HOME%\demo\programs\toursdb\
*.sql
• Aplicación de utilidad: ij– Set classpath=%DERBY_HOME%\lib\
derby.jar
SQL con Derby
•Ejemplo de utilización con ij:>IJij version 10.3ij> CONNECT 'jdbc:derby:firstdb;create=true';ij> CREATE TABLE FIRSTTABLE (ID INT PRIMARY KEY, NAME VARCHAR(12));0 rows inserted/updated/deletedij> INSERT INTO FIRSTTABLE VALUES (10,'TEN'),(20,'TWENTY'),(30,'THIRTY');3 rows inserted/updated/deletedij> SELECT * FROM FIRSTTABLE;ID |NAME------------------------10 |TEN20 |TWENTY30 |THIRTY3 rows selectedij>run 'ToursDB_schema.sql';ij>run 'loadTables.sql';
Recommended