29. DERBY Derby es un gestor de bases de datos relacionales OpenSource completamente implementada en Java. Es un proyecto de Apache y Oracle / Sun crearon un derivado (JavaDB) de la versión 10.5.3.0 incluido a partir de la JDK 6. Todos los datos relacionados con una base datos en Derby están persistidos en un directorio de la máquina donde se ejecuta, asegurando la integridad de éstos, además de su portabilidad entre distintos sistemas operativos y arquitecturas. Puede ser embebida en una aplicación Java o ejecutada como un servidor independiente. En función de este modo, debemos utilizar un driver diferente (incluido en el propio gestor de bases de datos), así como una cadena de conexión distinta. Derby : http://db.apache.org/derby/ JavaDB : http://www.oracle.com/technetwork/java/javadb/overview/index.html
35. EJERCICIO Reorganiza el código que tienes hecho utilizando una clase de utilidades (métodos estáticos) de forma que tu código principal quede de esta forma: public static void main(String[] args) { Connection connection = null; try { connection = JDBCUtils.getConnection(); /* NUESTRO CODIGO AQUI */ } catch (SQLException e) { JDBCUtils.printSQLException(e); } finally { JDBCUtils.closeConnection(connection); } }
36. EJERCICIO Mejora la gestión de errores que ya tenías implementado en el ejercicio anterior.
37.
38.
39.
40.
41. EJERCICIO CREATE TABLE tecnocom.personas ( id INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), nombre VARCHAR(40) NOT NULL, apellidos VARCHAR(60), telefono VARCHAR(15) NOT NULL, fechaNacimiento DATE, PRIMARY KEY (id) )
42. EJERCICIO DERBY requiere crear un SCHEMA previamente para almacenar las tablas, de forma que luego éstas serán accesibles mediante NOMBRE_SCHEMA.NOMBRE_TABLA. Para crear un schema hay que lanzar la sentencia: CREATE SCHEMA TECNOCOM y para borrarlo: DROP SCHEMA TECNOCOM RESTRICT
43.
44.
45.
46. 2.4 Sentencias - Prepared Statements Método que crea un objeto java.sql.Date a partir del año, mes y día: private static Date getDate(int year, int month, int day) { Calendar cal = Calendar.getInstance(); cal.set(cal.YEAR, year); cal.set(cal.MONTH, month-1); cal.set(cal.DATE, day); return new Date(cal.getTimeInMillis()); }
47. EJERCICIO Modifica el código que realiza las inserciones de los datos de prueba para que utilice PreparedStatements
48.
49.
50. EJERCICIO Escribe el código necesario para hacer múltiples inserciones en modo batch
58. 2.5 Conjuntos de resultados Principales métodos de ResultSet (Cont.)
59. EJERCICIO Recupera e imprime por pantalla todos los datos que hayas insertado en la tabla PERSONAS
60. EJERCICIO Crea un método que imprima todas las tablas de la base de datos y su contenido. Crea un segundo método que borre las tablas y el schema Tecnocom.