Introducción a Base de Datos

Slides:



Advertisements
Presentaciones similares
Java nos ofrece System.out para escribir en pantalla, pero también tenemos System.in para leer. System.in es un objeto de una clase de java que se llama.
Advertisements

Archivos de Texto. Introducción Los archivos son una secuencia de bits que se guarda en el disco duro. La ventaja de utilizar archivos es que los datos.
Excepciones y archivos Info 033. Exception El término Exception es la palabra corta para la frase "evento excepcional." Definition: Una excepción es un.
Archivos y Búsqueda Secuencial
Ing. Esp. Ricardo Cujar. Permite la ejecución de una sentencia, dada una determinada condición. If(condición){ sentencia(s) a ejecutar en caso de que.
Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión Práctica 3.
Archivos de Propiedades
ESTRUCTURA DE UN PROGRAMA EN
2012-BM5A. Introducción Todos los lenguajes de programación son distintos entre si. Sin embargo, pueden ser agrupados según la forma de pensar y estructurar.
Flujos de datos Un flujo es un canal por donde fluyen los datos.
¿Que es PHP? PHP Hypertext Preprocessor Y solo porque me quiero hacer el profesor cool y meter un chiste: PHP también significa: Para Hacer Páginas.
Pruebas de Funcionalidad de Software: Caja Negra y Caja Blanca Curso: Diseño de Sistemas 9no. Semestre.
Paul Leger Modelo OSI Paul Leger
Gestión de Base de Datos
Control Interno y Riesgos en TIs
Introducción a Modelamiento de Procesos
Introducción a Sistemas Operativos
Modelo Entidad-Relación (continuación)
Conceptos a Base de Datos
Paul Leger Repaso While y FOR Paul Leger
Conceptos a Base de Datos
¿Cómo almacenar datos dentro del computador?
CMS: sistema de Gestión de Contenidos
Introducción a Base de Datos
PHP Hypertext Preprocessor
Introducción a Sistemas Operativos
Programación en C - manejo de Archivos
Programación Orientada a Eventos
Arquitectura de una Base de Datos
ECLIPSE.
U.T. 11: Introducción A Las Bases De Datos
Introducción a Modelamiento de Procesos
Etapa Final del Proyecto
Paul Leger CICLOS: For Paul Leger
Paul Leger Procesos (capitulo 2) Paul Leger
Tutorial GMAIL.
PSEUDOCÓDIGO Prof. Rafael Mourglia.
Usando StreamReader y StreamWriter
Unidad 1: Introduccion Leccion 3: Input.
Arquitectura de una Base de Datos
Restricciones de integridad en el modelo relacional
HERRAMIENTAS PARA TRABAJAR.
Persistencia y Serialización en Java con Archivos
Manejo de Errores en .NET
Fundamentos del lenguaje de programación Condicionales, ciclos, Métodos, enumeraciones Escuela Técnica Superior Kinal Instructor Edwin Tumax.
HERRAMIENTAS BÁSICAS PARA ESTUDIO VIRTUAL
Unidad 3. Introducción a la programación
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 1)
Usando StreamReader y StreamWriter
HISTORIA El lenguaje fue creado por Yukihiro "Matz" Matsumoto, quien empezó a trabajar en Ruby el 24 de febrero de 1993, y lo presentó al público en el.
Usando StreamReader y StreamWriter
Conceptos Relacionados Unidad I. Parte A.
Aplicaciones de RECURSIVIDAD
¿Para qué se utiliza el PSEINT?
CURSO PROGRAMACIÓN BÁSICA SEMANA 3 ¿Qué es un programa?
Javascript.
Introducción a las bases de datos (I)
CICLOS EN JAVA FOR, WHILE, DO WHILE Un ciclo en Java o bucle en Java (como prefieras llamarlo) permite repetir una o varias instrucciones cuantas veces.
Estructura de Sistemas Operativos CAMPOS CHACALTANA, ANTHONY.
Estructura de los sistemas Operativos 1. Componentes de un sistema operativo  Administración de procesos  Administración de memoria  Subsistema de Entrada/Salida.
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 1)
Programación Orientada a Objetos
String, random y stream en java
Leyendo strings de la línea de comandos
Sistema de Control de Ingreso de Vehículos
Problemas de Strings boolean palindrome(String x) Ej: palindrome(“reconocer”)=true boolean alfabetico(String x) Ej: alfabetico(“hola”)=true,
Prof. Marcos Heredia.  Primitivos y No Primitivos.
GC-F-004 V.01 CENTRO DE INDUSTRIA Y LA CONSTRUCCIÓN REGIONAL TOLIMA.
Manejo de Excepciones y otros
SISTEMAS GESTORES DE REFERENCIAS BIBLIOGRÁFICAS Son programas para computadoras que permiten crear, mantener, organizar y dar forma a referencias bibliográficas.
Transcripción de la presentación:

Introducción a Base de Datos Paul Leger http://pleger.cl pleger@ucn.cl

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

Recordando archivos …

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?

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

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

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

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

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

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

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?

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?

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(); }

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?

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?

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

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?

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?

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

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

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

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

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