Tema 7. Manejo de bases de datos

Tema 7. Manejo de B.D. Tema 7. Manejo de bases de datos. Introducción a la Informática. E.U. Politécnica. PrimerCurso. Departamento Lenguajes y Cien

0 downloads 191 Views 416KB Size

Recommend Stories


BASES DE DATOS TEMA 2 MODELOS DE DATOS
BASES DE DATOS TEMA 2 MODELOS DE DATOS Un modelo de datos es una serie de conceptos que puede utilizarse para describir un conjunto de datos y las ope

Manejo de Bases de Datos Mysql en Lenguaje C
http://undersecurity.net Servidor irc : irc.ircnode.com Canal irc : #undersec Manejo de Bases de Datos Mysql en Lenguaje C By: S[e]C Entendiendo el

Story Transcript

Tema 7. Manejo de B.D.

Tema 7. Manejo de bases de datos.

Introducción a la Informática. E.U. Politécnica. PrimerCurso. Departamento Lenguajes y Ciencias de la Computación. Universidad de Málaga José Luis Leiva Olivencia. Despacho: I-326D (Edificio E.U.P)

Departamento de Lenguajes y Ciencias de la Computación.

1

Tema 7. Manejo de B.D.

7.1. Conceptos y definiciones (I). „

„

La utilización de las computadoras en las empresas ha supuesto una revolución respecto al almacenamiento y gestión de sus datos, dando lugar al uso de los denominados archivos informáticos y bases de datos. Ventajas derivadas: „ „ „

Gran capacidad de almacenamiento. Rapidez en el proceso de los datos. Precisión de los resultados obtenidos del proceso.

Departamento de Lenguajes y Ciencias de la Computación.

2

1

Tema 7. Manejo de B.D.

7.1. Conceptos y definiciones (II). „

„ „ „ „ „ „

Archivo(Tabla en Access): estructura de datos residente en memoria secundaria, consistente en un conjunto de informaciones estructuradas en unidades de acceso denominadas registros. Registro lógico. Registro físico. Campo. Campo clave. Clave primaria, secundaria. Clave externa. Departamento de Lenguajes y Ciencias de la Computación.

3

Tema 7. Manejo de B.D.

7.1. Conceptos y definiciones (III). „

Clasificación de archivos: „ „ „

„

Archivos de constantes. Archivos históricos. Archivos de situación.

Organización de los archivos: „ „ „

Secuencial. Directa. (Tablas hashing) Secuencial encadenada/indexada.

Departamento de Lenguajes y Ciencias de la Computación.

4

2

Tema 7. Manejo de B.D.

7.2. Concepto de base de datos (I). „

Conjunto de información „

relacionada „ „

„

organizada de manera lógica „ „

„

sobre un tema. con un objetivo determinado. para facilitar consulta. evitando redundancias e inconsistencias.

Ejemplos: Alumnos, asignaturas,... Departamento de Lenguajes y Ciencias de la Computación.

5

Tema 7. Manejo de B.D.

4.2. Concepto de base de datos (II). „ „ „

„

„

Almacenamiento de gran cantidad de datos. Gestión segura de los datos. Acceso compartido y simultáneo por los usuarios (Ojo: Bloqueo mutuo) Lenguaje de definición de datos (DDL): creación y modificación de estructura de bases de datos. Lenguaje de manipulación de datos (MDL): añadir, modificar, borrar, consultar datos de la base de datos.

Departamento de Lenguajes y Ciencias de la Computación.

6

3

Tema 7. Manejo de B.D.

7.3. S.G.B.D. (I). „

-

-

-

SISTEMA GESTOR DE BASES DE DATOS (SGBD): conjunto de datos interrelacionados (BD) + conjunto de programas para acceder a esos datos. Diseñados para gestionar grandes bloques de datos e información. -Deben mantener Seguridad Inform. almacenada (ante caídas y accesos no autorizados). Para hacer los sistemas más comprensibles Î tener visión abstracta de los datos Î esconder detalles sobre almacenamiento real y mantenimiento datos. Para que el sistema sea manejable Î obtención eficiente de los datos Î utilizar estructuras de datos complejas para representación de los datos

-

Î esconder esta complejidad a los usuarios de SGBD

-

Î niveles de abstracción (para simplificar su interacción con el sistema):

Departamento de Lenguajes y Ciencias de la Computación.

7

Tema 7. Manejo de B.D.

7.3. S.G.B.D. (II). NIVELES DE ABSTRACCIÓN: NIVEL FÍSICO: - nivel más bajo de abstracción - describe cómo se almacenan realmente los datos - se describen en detalle las estructuras complejas de bajo nivel. NIVEL CONCEPTUAL: - nivel intermedio y alto de abstracción - describe qué datos son realmente almacenados en la BD y sus relaciones - se describe la BD completa con estructuras sencillas correspondientes a otras del nivel físico, generalmente más complejas - Lo utilizan los administradores de BD, decidiendo qué inf. se va ha guardar NIVEL de VISIÓN: - nivel más alto de abstracción - describe sólo parte de la BD completa (la que interese a cada usuario) - suele proporcionarse muchas visiones distintas de la misma BD Departamento de Lenguajes y Ciencias de la Computación.

8

4

Tema 7. Manejo de B.D.

7.3. S.G.B.D. (III). „

Objetivos de un SGBD: „ „ „ „ „ „ „ „

Independencia. Seguridad. Integridad. Respaldo y recuperación de datos. Redundancia mínima. Capacidad de auditoría. Control de concurrencia. Capacidad para representar relaciones. Departamento de Lenguajes y Ciencias de la Computación.

9

Tema 7. Manejo de B.D.

7.3. S.G.B.D. (IV). „

Clasificación de SGBD: „

Según modelo de datos „ „ „ „

„

Según número de usuarios „ „

„

relacional jerárquico en red orientado a objetos. monousuarios multiusuario

Según situación „ „

Centralizado o local Distribuido

Departamento de Lenguajes y Ciencias de la Computación.

10

5

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (I). „

Las BD se organizan en tablas: „

„

información relativos a un conjunto de elementos homogéneos. Dividida en filas y columnas. „ „

„

Las filas las consideraremos registros o tuplas. Las columnas las consideraremos campos o atributos. Siempre debe haber una clave para identificar de forma única a los registros.

Departamento de Lenguajes y Ciencias de la Computación.

11

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (II).

Departamento de Lenguajes y Ciencias de la Computación.

12

6

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (III). „

Requisitos que han de cumplir las tablas en las b.d. Relacionales: „ „

„ „ „

„

La tabla puede tener solo un tipo de registro. Cada registro posee un número determinado de campos, cada uno de ellos con su nombre correspondiente. La base de datos, generalmente, contendrá muchas tablas, una por cada tipo de registro. Dentro de cada tabla, cada campo es distinto. Cada registro en una tabla, es único: no hay registros duplicados. Los registros dentro de cada tabla no tienen una secuencia determinada. Se pueden crear nuevas tablas relacionando campos procedentes de dos o más tablas ya existentes. Departamento de Lenguajes y Ciencias de la Computación.

13

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (IV). „

Terminología para describir la estructura relacional: „ „ „ „ „ „ „

„

Relación o tabla. Registro o entidad o tupla. Campo o atributo. Dominio de un campo. Clave aspirante. Clave principal. Clave externa o foránea.

Tipos de relaciones entre los datos: „ „ „

Uno a muchos. Uno a uno. Muchos a muchos.

1,n,m

Departamento de Lenguajes y Ciencias de la Computación.

14

7

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (V). ENTIDADES Y ATRIBUTOS ENTIDAD: objeto del mundo real, con existencia independiente y distinguible de otros, del que queremos almacenar información en la base de datos. ATRIBUTOS O CAMPOS: propiedades específicas de cada entidad: para describirla. Representación en ER: óvalos (encierran nombre atributo). VALOR: valor concreto de un atributo de una entidad específica. DOMINIO DE UN ATRIBUTO: conjunto de valores permitidos, válidos. TIPO DE ENTIDAD: el conjunto de entidades del mismo tipo (mismos atributos). Representación en ER: rectángulos (encierran el nombre del tipo entidad)

EMPLEADO Cod_emp

Nombre

Los óvalos (atributos) se conectan a la entidad mediante líneas.

Dirección

Departamento de Lenguajes y Ciencias de la Computación.

15

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (VI). RELACIÓN: asociación o combinación entre varias (2 o más) entidades.

TIPO DE RELACIÓN: conjunto de todas las relaciones del mismo tipo. Puede tener atributos descriptivos. Representación en ER: Rombos conectados mediante líneas rectas con los rectángulos (tipos de entidades) que relaciona. Se incluye el nombre dentro del rombo.

GRADO DE UN TIPO DE RELACIÓN: número de Tipos de Entidades que participan en el Tipo de Relación. Binarias (grado 2), ternarias (grado 3), …

Departamento de Lenguajes y Ciencias de la Computación.

16

8

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (VII). RESTRICCIONES SOBRE LOS TIPOS DE RELACIONES: Existen factores que pueden limitar combinaciones de entidades que pueden participar en una relación:

- Restricción de PARTICIPACIÓN: especifica si la existencia de una entidad depende o no de que esté relacionada con otra entidad por un tipo de relación. - Total: toda entidad del tipo, participa en la relación. - Parcial: algunas entidades del tipo están relacionadas y otras no.

Representación en ER: Participación total Participación parcial

Departamento de Lenguajes y Ciencias de la Computación.

17

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (VIII). - Restricción de CARDINALIDAD: nº de entidades con las que puede asociarse otra entidad mediante un tipo de relación. - Una a Una (1:1): una entidad tipo A, relacionada a lo sumo con una tipo B y viceversa.

- Una a Muchas (1:N): una entidad tipo A, con cualquier nº de entidades tipo B, pero una entidad tipo B, asociada a lo sumo, con una tipo A.

- Muchas a Muchas (M:N): una entidad tipo A, asociada con nº cualquiera tipo B, y una tipo B, asociada con nº cualquiera de tipo A. Representación en ER:

anotando 1 ó (N ó M) en cada vértice de la relación que la une con el tipo de Entidad.

Departamento de Lenguajes y Ciencias de la Computación.

18

9

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (IX). - LENGUAJE DE CONSULTA de una BD: - Lenguaje para solicitar información de la BD (los usuarios). - Suelen ser de más alto nivel que los lenguajes estándar de programación. - Ejemplos: SQL(Mirar Anexo SQL), QSB (Query By Example) - La INTEGRIDAD REFERENCIAL es un sistema de reglas, para garantizar: - que las relaciones entre tablas son válidas y - que no se eliminan ni modifican accidentalmente datos relacionados Se puede establecer cuando se cumple: - El campo coincidente de la tabla principal es una clave principal o tiene un “índice” único. - Los campos relacionados tienen el mismo tipo de datos. Cuando se exige esta integridad: - No se puede introducir un valor en el campo de “clave externa” de la tabla relacionada que no exista en la “clave ppal.” de la tabla relacionada. - Se puede introducir valor NULO en la “clave externa”Î reg. no relacionados Departamento de Lenguajes y Ciencias de la Computación.

19

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (X). „

Obtención de las tablas a partir del diagrama: „

„

„

Dibujar un diagrama tipo ER con todas las entidades y relaciones que son de interés para la empresa. Deducir un conjunto de relaciones preliminares, cada una con su clave primaria. Incluir los atributos de interés. Departamento de Lenguajes y Ciencias de la Computación.

20

10

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (XI). „

Relaciones preliminares para las correspondencias binarias de grado 1:1 „

„

„

Regla 1: Si el grado de la correspondencia binaria es 1:1 y es obligado el tipo de participación de ambas entidades, sólo es necesaria una relación. Como campo clave primaria de la relación se puede tomar cualquiera de las claves de la entidad. Regla 2: Si el grado de la correspondencia binaria es 1:1 y el tipo de participación de una entidad es obligatorio y el de la otra es opcional, son necesarias dos relaciones. Cada una contendrá la información concerniente a una entidad y su clave primaria será la clave de la entidad correspondiente. La clave de la entidad opcional se añadirá como un atributo más en la relación cuyo tipo de participación sea obligatorio. Regla 3:Si el grado de la correspondencia binaria es 1:1 y el tipo de participación en ambas entidades es opcional, son necesarias tres relaciones, una para cada entidad y otra para la correspondencia. La clave delas relaciones de las entidades es la clave primaria de l a entidad correspondiente. La relación con la correspondencia deberá contener las claves de las entidades.

Departamento de Lenguajes y Ciencias de la Computación.

21

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (XII). „

Relaciones preliminares para las correspondencias binarias de grado 1:n „

„

Regla 4: Si el grado de la correspondencia binaria es 1:n y la entidad del lado n e s obligatoria, se necesitan dos relaciones, una para cada entidad. La clave de las relaciones de las entidades es la clave primaria de la entidad correspondiente. La relación de l a entidad n contiene la clave de l a entidad 1. Regla 5: Si el grado de la correspondencia binaria es 1:n y la entidad del lado n es opcional se necesitan tres relaciones, una para cada entidad y otra para la correspondencia. La clave de las relaciones de l as entidades es la clave primaria de la entidad correspondiente; la relación con la correspondencia contendrá las claves de las entidades. Departamento de Lenguajes y Ciencias de la Computación.

22

11

Tema 7. Manejo de B.D.

7.4. Introducción al modelo de datos relacional (XIII). Relaciones preliminares para las correspondencias binarias de grado m:n

„

„

Regla 6: Si el grado de la correspondencia binaria es m:n se necesitan tres relaciones, una para cada entidad y otra para la correspondencia. La clave de las relaciones de las entidades es la clave primaria de la entidad correspondiente; la relación con la correspondencia contendrá las claves de las entidades. Ojo que, la tercera relación puede tener más campos. Ejemplo: empleados trabajan en varios proyectos. Imaginar el caso que un empleado tuviera distintas funciones en distintos proyectos.

Relación preliminar para las correspondencias ternarias.

„

„

Regla 7: Si existe una correspondencia ternaria se necesitan 4 relaciones, una para cada entidad, y una más para la correspondencia, que contendrá entre sus atributos las claves de las entidades. En general para una correspondencia de grado n se necesitan n+1 relaciones preliminares. Departamento de Lenguajes y Ciencias de la Computación.

23

Tema 7. Manejo de B.D.

Ejemplo práctico „

Se desea tener una base de datos con la siguiente información acerca de los alumnos de una academia donde se imparten varios cursos: „

„

„

„

„

Información acerca de los alumnos, que constará de su nombre y apellidos, un código único para cada alumno(ej: 03/02565), su dirección, fecha de nacimiento y sexo (‘H’ o ‘M’). Estos alumnos estarán matriculados en un sólo curso cada uno. Cada curso tendrá un nombre, un código único que lo identifica(ej:342), el número máximo de alumnos recomendado,la fecha de inicio y de finalización del curso y el número de horas del curso. Los profesores tendrán una ficha en la academia donde se especifican sus datos personales y los datos del contrato. Es decir, nombre, DNI, dirección, titulación, gana (cuota por hora). Solo almacenamos información de profesores que actualmente trabajen en la academia, alumnos que actualmente estén matriculados en curso y cursos que actualmente se impartan. Sabemos que un alumno se puede matricular en un solo curso, y que un curso puede ser impartido por varios profesores, pudiendo impartir un mismo profesor varios cursos distintos.

Departamento de Lenguajes y Ciencias de la Computación.

24

12

Tema 7. Manejo de B.D.

Ejemplo práctico(II) ALUMNOS

n

1

se Matriculan en

CODIGO NOMBRE APELLIDOS DIRECCION SEXO FECHANAC

CURSOS CODIGO NOMBRE NUMMAX FECHAINI FECHAFIN HORASTOTAL

m PROFESORES DNI

NOMBRE APELLIDOS

CUOTA

n

son Impartidos por

TITULACION HORAS

Departamento de Lenguajes y Ciencias de la Computación.

25

Tema 7. Manejo de B.D.

Ejemplo práctico(III) Paso 1 Entidad Alumnos (CODIGO, NOMBRE, APELLIDOS, DIRECCION, FECHANAC, SEXO) Entidad Cursos (CODIGO,NOMBRE, NUMMAX, FECHAINI, FECHAFIN, HORASTOT)

Paso 2 Al ser una relación uno a mucho con la entidad n obligatoria (Regla 4), quedaría: Tabla Alumnos (CODIGO, NOMBRE, APELLIDOS, DIRECCION, FECHANAC, SEXO, CODIGOCURSO)

Clave externa

Tabla Cursos (CODIGO,NOMBRE, NUMMAX, FECHAINI, FECHAFIN, HORASTOT) Departamento de Lenguajes y Ciencias de la Computación.

26

13

Tema 7. Manejo de B.D.

Ejemplo práctico(III) Paso 3 Entidad Cursos (CODIGO,NOMBRE, NUMMAX, FECHAINI, FECHAFIN, HORASTOT) Entidad Profesores(DNI, NOMBRE, APELLIDOS, TITULACION, CUOTA)

Paso 4 Al ser una relación binaria muchos a muchos (Regla 6), quedaría: Tabla Cursos (CODIGO,NOMBRE, NUMMAX, FECHAINI, FECHAFIN, HORASTOT) Tabla Profesores (DNI,NOMBRE, APELLIDOS, TITULACION, CUOTA) Tabla Conectorcursos-profesores (DNI, CODIGO, HORAS) Departamento de Lenguajes y Ciencias de la Computación.

27

Tema 7. Manejo de B.D.

Bibliografía „

„

„

Prieto, Alberto; Lloris, Antonio. Introducción a la Informática. McGrawHill

Angulo, J.M.; Usategui, C.E., Introducción a la informática. Paraninfo, 1992 Pascual, Francisco. Microsoft Access 2000. Ra-ma.2000 Departamento de Lenguajes y Ciencias de la Computación.

28

14

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.