La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Introducción a Base de Datos

Presentaciones similares


Presentación del tema: "Introducción a Base de Datos"— Transcripción de la presentación:

1 Introducción a Base de Datos
Paul Leger

2 Objetivo Comprender que los programas escritos en algún lenguaje de programación deben estar separado de los datos

3 Recordando archivos …

4 Persistencias de Datos
Persistencia de datos: Guardar la información en un medio recuperable (ej. disco duro) es conocido como persistencia de datos Sus actuales programas en Java, toda la información es borrada cuando sus programas terminan de ejecutarse ¿Qué beneficios podríamos obtener si la información ingresada es guardada cuando el programa termina? ¿Qué desventajas podríamos obtener si la información ingresada es guardada cuando el programa termina?

5 Logrando la persistencia de datos
Es posible guardar la información en archivos (por ejemplo «.txt») En Java, nosotros podemos guardar información usando ciertas funciones (o librerías como en el caso de la librería “UCN”) NOTA: El paquete UCN provee un conjunto de funciones que simplifica el uso de ciertas funciones de archivos. Sin embargo, este paquete no siempre está disponible

6 Abrir y Manipular Archivos en Java
En Java, hay (extremadamente) varias maneras de leer y manipular archivos en Java Lecturas de archivos de datos File archivo = new File(“miArchivo.txt”); try { Scanner entrada = new Scanner(archivo); while (entrada.hasNextLine()) { int i = entrada.nextInt(); System.out.println(i); //que es esto? } entrada.close(); } catch (FileNotFoundException e) { //mostrando el error correspondiente

7 Abrir y Manipular Archivos en Java
Permite agregar al final del archivo Escribiendo en archivos try { FileWriter fw= new FileWriter("file.txt”, true); PrintWriter salida = new PrintWriter(new BufferedWriter(fw))); salida.println(”INSERTANDO UNA LINEA"); salida.close(); } catch (FileNotFoundException e) { //mostrando el error correspondiente

8 Recuerde que … Lectura o escritura comienza desde el primer dato en el archivo Al final debes cerrar el archivo

9 Ahora usando librería UCN
NOTA: librería UCN no permite fácilmente abrir un archivo para agregar un dato al final (última fila)

10 Creando una agenda Out archivo = new Out(«agenda.txt»); StdOut.println(“Deme nombre y telefono”); String nombre = StdIn.readString(); int telefono = StdIn.readInt(); archivo.println(nombre +" "+ telefono); archivo.close(); Ejercicio: Modifique este programa para que guarde el rut de la persona al inicio de la línea, es decir: rut nombre telefono

11 Mostrando los datos de la Agenda
In archivo = new In(“agenda.txt”); while (!archivo.isEmpty()) { String nombre = archivo.readString(); int telefono = archivo.readInt(); StdOut.println(nombre + “ “ + telefono); } archivo.close(); ¿Qué es esto?

12 Versión Avanzada de una Agenda (1/3)
public static void main(String[] args) { int resp; do { StdOut.println("1) Ingresar una persona”); StdOut.println("2) Buscar una persona”); StdOut.println(“0) Salir”); StdOut.print("Ingresar opcion (0/1/2):”); resp = StdIn.readInt(); if (resp == 1) {agregarRegistro();} //luego definiremos este método if (resp == 2) {buscarRegistro();} //luego definiremos este método } while (resp != 0); StdOut.println(“Adios!!”); } ¿Qué es esto?

13 Versión Avanzada de una Agenda (2/3)
public static void agregarRegistro() { Out archivo = new Out("agenda.txt"); int resp; do { StdOut.print("Deme nombre y telefono"); String nombre = StdIn.readString(); int telefono = StdIn.readInt(); archivo.println(nombre +" "+ telefono); StdOut.print("Desea agregar mas datos (SI = 0):"); resp = StdIn.readInt(); } while (resp == 0); archivo.close(); }

14 Versión Avanzada de una Agenda (3/3)
public static void buscarRegistro() { In archivo = new In("agenda.txt"); StdOut.print("Deme nombre:"); String nombre = StdIn.readString(); boolean encontrado = false; while (!archivo.isEmpty()) { String nombreAux = archivo.readString(); int telefono = archivo.readInt(); if (nombre.equalsIgnoreCase(nombreAux)) { encontrado = true; StdOut.println(telefono); break; } } if (encontrado == false) { //como se acorta esto? StdOut.println("No encontrado"); } archivo.close(); } ¿Para qué es esto? ¿Qué es esto?

15 Un archivo: Una simple base de datos
Nuestra agenda telefónica es una versión simplificada de una base de datos, pues los datos son persistente y podemos guardar varios números Sin embargo, si “agenda.txt” cumple con una base de dato ¿Qué es una base de datos?

16 Base de Datos Base de Datos: Es un conjunto de datos relacionado entre sí, es decir, los datos son sobre un dominio Dato: es un hecho conocido que tienen un significado implícito En nuestra “súper” sistema de agenda: Base de datos => un conjunto de datos que representa los contactos de una persona Dato => nombre y teléfono de un contacto

17 Base de Datos muy famosas
FACEBOOK Y GMAIL: ¿Es un conjunto de información acerca de …? ¿Qué es un dato en Facebook & Gmail? ¿Por qué estas base de datos y servicios son gratis? ¿Por qué el tráfico de base de datos es el cibercrimen más usado?

18 Nuestra agenda: A mínima versión de una base de datos
¿Qué pasa si en nuestra agenda deseamos guardar además … la información de su trabajo? familiares? millones de números de teléfonos (¿qué tan rápido sería buscar?) variables números de teléfonos personas con varios nombres amigos en Facebook? historial sicológico? una categoría (ej. «no contestar», «Movistar») los datos en computador que puede ser accedido por todos? ¿Cómo logramos que estos archivos trabajen juntos? ¿Cómo estructuramos el archivo o los archivos para guardar toda esta NUEVA información? ¿Podemos seguir usando un SOLO archivo para almacenar toda esta información?

19 Programas y Base de Datos
Los programas se encargan de relacionarse con el entorno Los datos (archivos) son guardados/manipulados en otro lado NOTA: Muchas veces, el programador/usuario no debería tener acceso a los datos, solo al programa a desarrollar

20 Administrador de Base de Datos y Programador
El programador no debería Implementar los detalles de las estructuras de los archivos Preocuparse de dónde, cómo, cuánta información se guarda (… no es tan cierto …) Además, Implementar cada acceso a un archivo es sumamente tedioso y propenso a errores. Por ejemplo, considere todo el código usado en agenda para agregar y buscar un número

21 Programa (funcional) y datos
Implementar reglas de negocios Agregar, borrar, buscar rápido, modificar, ordenar, controlar SOFTWARE Base de Datos

22 Gran cantidad información => necesita varios archivos RELACIONADOS que tengan una estructura la cual permita una EFICAZ y EFICIENTE búsqueda Continuará …

23 Lectura Capitulo 1 del libro guía
“Elmasri,R., Navathe, S. Fundamentos de sistemas de bases de datos.“


Descargar ppt "Introducción a Base de Datos"

Presentaciones similares


Anuncios Google