36
INTRODUCCION A LAS BASES DE DATOS 1. SURGIMIENTO HISTÓRICO DE LAS BASES DE DATOS INTEGRADAS. Al estudiar el desarrollo del procesamiento automatizado de datos, en lo que se refiere al aseguramiento técnico se habla de diferentes generaciones. Desde el punto de vista del aseguramiento matemático y en particular, el aseguramiento de programas, algunos autores reconocen 3 generaciones: a) Solución de tareas aisladas. b) Integración de tareas aisladas en sistemas particulares. c) Integración de sistemas particulares en sistemas automatizados de dirección. Este proceso de integración ocurre paralelamente, aunque no simultáneamente, en dos esferas: a) Integración de los programas: Ha estado facilitado por el uso de lenguajes de programación cada vez más sofisticados y de redactores que permiten el acoplamiento de módulos escritos en lenguajes diferentes. b) Integración de los datos: En la integración de los datos se han producido tres categorías de técnicas para su manipulación: 1. Sistemas orientados a los dispositivos: Programas y ficheros son diseñados y empleados de acuerdo a las características físicas de la unidad central y los periféricos. Cada programa está altamente interconectado con sus ficheros, por lo que la integración de datos de diferentes sistemas es imposible prácticamente. 2. Sistemas orientados a los ficheros: La lógica de los programas depende de las técnicas de organización de los ficheros (secuencial, directo, etc.). Cada usuario organiza su fichero de acuerdo con sus necesidades y las relaciones entre los elementos se establecen a través de los programas de aplicación. Esta forma de trabajo implica redundancia de datos que trae aparejada mayor gasto de memoria y complica las operaciones de actualización (modifica un dato dondequiera que aparezca). Esto aumenta el tiempo de tratamiento y atenta contra la integridad de la información. Integridad es que en todo momento los datos almacenados estén correctos en correspondencia con la realidad. Además, en la vida real se establecen relaciones entre los objetos que son muy

Introduccion a las bases de datos full

Embed Size (px)

Citation preview

Page 1: Introduccion a las bases de datos full

INTRODUCCION A LAS BASES DE DATOS

1. SURGIMIENTO HISTÓRICO DE LAS BASES DE DATOS INTEGRADAS.

Al estudiar el desarrollo del procesamiento automatizado de datos, en lo que se

refiere al aseguramiento técnico se habla de diferentes generaciones.

Desde el punto de vista del aseguramiento matemático y en particular, el

aseguramiento de programas, algunos autores reconocen 3 generaciones:

a) Solución de tareas aisladas.

b) Integración de tareas aisladas en sistemas particulares.

c) Integración de sistemas particulares en sistemas automatizados de dirección.

Este proceso de integración ocurre paralelamente, aunque no simultáneamente,

en dos esferas:

a) Integración de los programas: Ha estado facilitado por el uso de

lenguajes de programación cada vez más sofisticados y de

redactores que permiten el acoplamiento de módulos escritos en lenguajes

diferentes.

b) Integración de los datos: En la integración de los datos se han

producido tres categorías de técnicas para su manipulación:

1. Sistemas orientados a los dispositivos:

Programas y ficheros son diseñados y empleados de acuerdo a las

características físicas de la unidad central y los periféricos. Cada programa

está altamente interconectado con sus ficheros, por lo que la integración de

datos de diferentes sistemas es imposible prácticamente.

2. Sistemas orientados a los ficheros:

La lógica de los programas depende de las técnicas de organización

de los ficheros (secuencial, directo, etc.). Cada usuario organiza su

fichero de acuerdo con sus necesidades y las relaciones entre los

elementos se establecen a través de los programas de aplicación.

Esta forma de trabajo implica redundancia de datos que trae

aparejada mayor gasto de memoria y complica las

operaciones de actualización (modifica un

dato dondequiera que aparezca). Esto aumenta el

tiempo de tratamiento y atenta contra la integridad de la información.

Integridad es que en todo momento los datos

almacenados estén correctos en correspondencia con la realidad.

Además, en la vida real se establecen relaciones entre los objetos que

son muy

Page 2: Introduccion a las bases de datos full

difíciles de representar u obtener a partir de sistemas tradicionales de ficheros.

Por ejemplo, si se tiene información sobre trabajadores y estudiantes de una

facultad, las aplicaciones requeridas van a definir la manera de organizar y

estructurar los ficheros.

Si se desea obtener datos como:

- Calificaciones promedio de cada estudiante.

- Listado de estudiantes por grupos.

- Categoría científica y docente de cada profesor.

- Salario de cada trabajador.

Resulta adecuado establecer dos ficheros: uno de trabajadores y uno de estudiantes.

Pero, ¿Qué ocurre si se quiere establecer vínculos entre los profesores y

estudiantes?

Por ejemplo, si se desea obtener:

- Los estudiantes de un profesor.

- Los profesores de un estudiante.

Se estructuraría un fichero de profesores y estudiantes que resolvería algunas

demandas, pero sería ineficiente para otras.

Entonces, ¿es posible representar de manera eficiente utilizando los medios de

cómputo los fenómenos o procesos de la realidad objetiva, aunque sea por

supuesto de forma esquemática, pero en la que se establezcan determinados

vínculos entre los elementos u objetos que forman parte de esos procesos o

fenómenos?

Veremos que esto es posible hacerlo a través de la utilización de BD y de los

sistemas que dirigen su manipulación o para decirlo de otra manera, los Sistemas

de Gestión de Bases de Datos (SGBD). Obteniendo entonces la 3ra. categoría:

3. Sistemas orientados a Bases de datos:

En los que hay una débil interdependencia entre los programas de aplicación y

la organización física de los datos.

¿Qué es una Base de Datos?.

Es el conjunto de datos interrelacionados entre sí, almacenados con carácter

más o menos permanente en la computadora. O sea, que una BD puede

considerarse una colección de datos variables en el tiempo.

Page 3: Introduccion a las bases de datos full

2. CONCEPTOS BÁSICOS.

En cualquier sistema de información basado en computadoras se cuenta con dos enfoques

para el almacenamiento de los datos:

1. En archivos o ficheros individuales.

2. En base de datos.

1. Supongamos una organización con diversos sistemas de información que utilizan tres

archivos convencionales e independientes.

“VENTAS”

NÚM. NOMBRE 2009 2010 2011

Contiene información con datos históricos sobre las ventas realizadas por el personal de la organización.

“ACTIVIDADES”

NÚM. NOMBRE AREA 2010

Contiene las actividades actuales las cuales se actualizan con frecuencia.

“PERSONAL”

NUM DPTO NOMBRE DIRECC. TELF CONTRATO SALARIO TITULO

Contiene los datos relacionados con el personal de la empresa.

Observemos el Núm. y NOMBRE del trabajador aparece en todos los ficheros por lo que

algún cambio en estos datos requieren la actualización de los tres ficheros.

2.- Una Base de Datos (BD) es un almacenamiento de datos formalmente definidos,

controlados centralmente para intentar servir de múltiples y diferentes aplicaciones.

Un ejemplo de Base de Datos donde usuarios de distintos departamentos de una misma

organización comparten los mismos datos será:

Page 4: Introduccion a las bases de datos full

“Grupo de Datos 1”

XXXX

XXXX

X

XXXX

XXXX

X

“Base de Datos” “Grupo de Datos 2”

2222

2

2

2

2222

2

2

2

..........

..........

“Grupo de Datos n”

2 2 2 2 2

XXX

XXX 2 2 2 2 2

XXX

XXX

Estos conjuntos de datos se superponen indicando que la existencia de datos que fueran

redundantes en archivos convencionales, solamente se almacenarán una vez.

2.1. ARCHIVOS CONVENCIONALES.

Los archivos convencionales son una manera práctica de almacenar los datos de ciertas

aplicaciones. Un archivo convencional se puede diseñar y elaborar de manera rápida

reduciendo los problemas de disponibilidad y seguridad.

Cuando ya existen aplicaciones que trabajan con archivos independientes, el analista no puede

involucrarse en el problema de solucionar el almacenamiento de los datos y lo que hace es

diseñar otros archivos independientes.

La velocidad de procesamiento es otra ventaja del uso de los archivos.

Consecuencias:

- Uno de los principales problemas es la falta de potencial para evolucionar, se diseñan

sobre la base de las necesidades inmediatas.

- El rediseño de archivos implica que se modifiquen los programas que lo accesan,

esto implica mayor tiempo de desarrollo y mantenimiento del sistema.

Page 5: Introduccion a las bases de datos full

- Generalmente los datos almacenados llegan a ser redundantes, además la actualización

de los archivos llevan más tiempo.

- La integridad de los datos llegan a convertirse en una gran preocupación ya que los

cambios en un archivo requieren también cambios en otros que puedan ignorarse.

2.2. BASE DE DATOS.

La Base de Datos no es simplemente una colección de archivos; es una fuente central de datos

significativos, los cuales son compartidos por numerosos usuarios para diversas aplicaciones.

La esencia de una Base de Datos radica en el Sistema Administrador de la Base de datos

(DBMS Data Base Management System) el cual permite la creación, modificación y

recuperación de la Base de Datos. Generalmente se designa una persona que es el

administrador de la BD.

Objetivos:

Los objetivos de eficacia de una BD son:

- Asegurar que los datos puedan ser compartidos por los usuarios de una organización,

para una variedad de aplicaciones.

- Que el mantenimiento de los datos sea precisa y constante.

- Asegurar que todos los datos requeridos para las aplicaciones presentes y futuras se

encuentren siempre disponibles.

- Permitir que evolucione y se adapte a las necesidades crecientes de los usuarios.

- Permitir que los usuarios desarrollen su propia visión de los datos sin preocuparse de

la forma en que estos se encuentran almacenados físicamente.

Ventajas:

- El compartir los datos significa que estos se almacenan sólo una vez y esto hace que se

mantenga la integridad de los datos.

- Cuando un usuario necesite un dato en particular, lo podrá encontrar disponible en la

BD (si el diseño fue bueno).

- Una BD bien diseñada es más flexible que varios archivos independientes.

- El enfoque de BD tiene la ventaja principal de permitir que los usuarios expongan sus

puntos de vista sobre los datos, sin preocuparse de la estructura de los datos o de la

ubicación física.

Page 6: Introduccion a las bases de datos full

Desventajas:

- Los datos se almacenan en un solo lugar y por lo tanto son más vulnerables de

accidentes, por lo que requieren una protección complementaria.

- Aumento del tiempo requerido para insertar, actualizar, eliminar y recuperar los datos.

Una BD no puede optimizar la recuperación de los datos para un usuario en particular, ya que

deberá compartirse con numerosos usuarios y varias aplicaciones.

2.3. MODELO DE DATOS.

Un modelo de datos se define como un grupo de herramientas conceptuales que se utilizan

para describir los datos, sus relaciones, su semántica y sus limitaciones de forma tal que

permite la interpretación del mundo real en un sistema informático.

Todo modelo de datos tiene propiedades Estática y Dinámica.

La parte dinámica se define mediante un conjunto de operaciones que se pueden realizar de

acuerdo con un lenguaje de manipulación de datos (DML). Cambia con el tiempo.

Parte Dinámica

(DML)

Operaciones

Las operaciones pueden ser:

- Selección

- Recuperación

- Actualización (Modificación, inserción, corrido)

La parte estática se define mediante un esquema y un lenguaje de definición de datos (DDL).

Es la que no cambia con el tiempo.

Parte Estática (DDL)

Objetos

Restricciones

Propias de cada Modelo

ESQUEMA

ESTRUCTURA RESTRICCIONES

• Inherentes al modelo

• Opcionales

OBJETOS DEL MODELO

depende el modelo que se trate,

pero en general son:

Page 7: Introduccion a las bases de datos full

• Entidades

• Atributos

• Dominios

• Relaciones

• Representaciones, etc.

Clasificación de los Modelos de Datos.-

Los Modelos se clasifican de acuerdo al nivel de abstracción en:

1.- Externos

Modelos lógicos

Basados en Objetos

2.- Conceptuales

3.- Internos

Modelo físico

Basados en Registros

Dentro del grupo de los modelos lógicos se diferencian:

a.- Los basados en objetos, elemento de referencia es el objeto.

Se caracterizan por ser muy flexibles y hacen posible la especificación de las limitaciones de

los datos y como ejemplo tenemos:

- Modelo Entidad-Relación

- Modelo Binario

- Modelo Semántico

- Modelo Infológico

b.- Los basados en registros, elemento básico es un conjunto de datos relacionados de algún

modo.

Se utilizan para especificar, tanto la estructura lógica general de BD como una descripción en

un nivel más alto implementación, pero no permiten especificar de forma clara las

limitaciones de los datos y como ejemplo tenemos:

- Modelo Relacional

- Modelo Jerárquico

- Modelo Reticular

2.4. MODELO ENTIDAD – RELACIÓN.

Este Modelo Entidad – Relación que también se denomina modelo conceptual de datos, es

una técnica de representación gráfica que incorpora información relativa a los datos y la

relación que existe entre ellos para darnos una visión del mundo real, este modelo es un paso

previo al futuro diseño físico de las bases de datos.

Page 8: Introduccion a las bases de datos full

NOTA: El modelo Entidad - Relación es una visión del mundo real con la mayor naturalidad

posible mediante los objetos y sus relaciones. Los objetos básicos se denominan entidades.

“MODELO EXTERNO”

CENTRAL

TRACTOR

CAMPO

“MODELO CONCEPTUAL”

CENTRAL

CAMPO

TRACTOR

• Características del MER:

- Reflejan sólo la existencia de los datos y no lo que se hace con ellos.

- Se incluyen todos los datos del sistema informativo y por tanto no esta orientado a

ninguna aplicación en particular.

- Es independiente al modelo físico de los datos y al Sistema Operativo.

- No tiene en cuenta restricciones de espacio, almacenamiento, ni tiempo de ejecución.

- Está abierto a la evolución del sistema.

Page 9: Introduccion a las bases de datos full

2.4.1. Conceptos Fundamentales.

• Entidad.-

) Entidad: Es una cosa u objeto concreto o abstracto que existe, que puede distinguirse

de otros y del cual se desea almacenar información.

) Conjunto de entidades: Las entidades se pueden agrupar en conjuntos de entidades,

con la agrupación de los datos de cada uno de ellas.

Generalmente existe un predicado asociado a cada conjunto de entidades que permite

comprobar si una entidad pertenece al conjunto dado o no. Las entidades pueden existir a mas

de un conjunto de entidades o sea que los conjuntos no son mutuamente excluyentes.

UNIVERSIDAD

Profesores Seguridad

Rectorado Alumnos

Las entidades además pueden ser fuertes o débiles.

Entidades Fuertes: sus ocurrencias se identifican por sí mismas, o sea, los atributos que las

identifican son propios de las entidades y se representan con un

rectángulo.

Ejemplo de Entidad Fuerte:

Alumno

Nro. Carnet

Nombre Nivel

Atributos de la

Entidad

El alumno es identificable por su Nro. Carnet.

Entidades Débiles: sus ocurrencias son identificables solo por estar asociadas a otra u otras

entidades, o sea, que algunos de los atributos que la identifican se

refieren a otra entidad y estas se representan con doble rectángulo.

Page 10: Introduccion a las bases de datos full

Ejemplo de Entidad Débil:

Departamento

Asignatuta

Código

Asignatura (se identifica mediante el código de la asignatura, que tiene como primer carácter

el departamento al que pertenece, y el siguiente dígito es un número secuencial que el

departamento pone a sus asignaturas). De ese modo el departamento “A” se corresponde con

“Lenguajes de programación“.

• Clave o Llave de una Entidad.-

Antes de definir Clave, definiremos un conjunto más genérico, denominado: Identificador,

Determinante o Superclave.

) La Superclave es un conjunto de uno o más atributos que permiten identificar de

forma unívoca una Ocurrencia de Entidad dentro del conjunto de ellas.

) De entre todas las Superclaves

aquellas para las cuales ningún

subconjunto propio es a su vez una

Superclave, se le denomina

Superclaves mínimas o Claves

Candidatas. Así pues, podemos

definir las Claves Candidatas

como aquellas Superclaves que

además de serlo son mínimas.

Superclaves

Claves Candidatas

Clave Primaria Claves Secundarias

) De entre todas las Claves Candidatas se elige la Clave primaria siendo todas las

demás denominadas Claves Alternativas o Claves secundarias.

Ejemplo en la Entidad Alumno:

Superclaves:

- Número del Semestre + Número Registro.

- Número Cédula.

- Nombre Alumno.

- Nombre + Fecha Nacimiento.

Claves Candidatas:

- Número Cédula.

- Nombre Alumno.

- Número del Semestre + Número Registro.

Page 11: Introduccion a las bases de datos full

Clave Primaria:

- Número Cédula.

Claves Secundarias:

- Nombre Alumno.

- Número del Semestre + Número Registro.

) Claves Externas ó Ajenas es aquel o aquellos atributos de una entidad que son claves

primarias en otras entidades.

Ejemplo en la Entidad Asignatura:

Superclaves:

- Código Asignatura = Código Dpto. + Número Asignatura.

- Descripción.

Claves Candidatas:

- Código Asignatura.

- Descripción.

Clave Primaria:

- Código Asignatura.

Clave Secundaria:

- Descripción.

Clave Externa:

- Código Dpto.

Ahora supongamos que en la asignatura además se almacenara el código del profesor que lo

imparte, esta será otro clave externa.

• Relación.-

) Relaciones: Es una asociación sin existencia propia de una o varias entidades y se

representa con un rombo y se nombra con verbo.

Alumno recibe Asignatura

NOTA.- Una limitación del MER es que no es posible expresar relaciones entre relaciones.

La dimensión de una relación es la cantidad de entidades que participan en ellas. La mas

generalizada es la binaria (sólo dos entidades).

Page 12: Introduccion a las bases de datos full

...

Alumno

...

Asignatura

Vendedor negocian Cliente

Relación Ternaria

Agente

Las relaciones también tienen claves.

• Clave de una Relación.-

) Clave de una Relación es el producto cartesiano o concatenaciones de las Claves

Primarias de las Entidades asociadas y en algunos casos los atributos que forman dicha

relación.

La Relación Recibe tiene clave número de cédula y código de la asignatura, pero si el alumno

está matriculado en una asignatura de otro curso, arrastre, entonces el atributo curso de la

relación formará parte de la clave de la relación.

• Atributo.-

) Atributo es una unidad básica de información de una entidad o de una relación que

sirve para identificarla o descubrirla y se representa con una línea con un círculo en el

extremo.

...

recibe

• Ocurrencia.-

La Ocurrencia se puede definir tres tipos: de atributos, de entidad y de relación.

) Ocurrencia de atributo: Es el conjunto de valores que puede tomar un atributo

(dominio).

Page 13: Introduccion a las bases de datos full

Asignatura

Asignatura Nombre Asignatura

9 Base de Datos

Atributo

9 Ingeniería de Sistemas

9 Física

Ocurrencias

Las ocurrencias de éste atributo, asignatura, serian: base de datos, ingeniería de sistemas,

física, etc.

) Ocurrencia de una entidad: Es el conjunto de ocurrencias de sus atributos con sentido

y existencia propia.

Alumno

Nro. Cédula

Dirección

Fecha de Nacimiento

Nro. Cédula Nombre Dirección Fecha de Nacimiento

123456789-0 Raúl Ambato 02/02/76 234567890-1 Juan Riobamba 03/03/66

345678901-2 María Quito 04/04/67

Ocurrencia

de Entidad

Ocurrencias de Atributos

Las ocurrencias de ésta entidad, Alumno, serían la colección de todas las filas que conforman

la tabla anterior.

) Ocurrencia de relación: Está constituido por una y sola una ocurrencia de cada una de

las entidades asociadas y las ocurrencias de cada uno de los atributos de la relación.

Nro. Cédula Curso Nombre Asignatura

Alumno recibe

Page 14: Introduccion a las bases de datos full

Nombre Direcció

n

Alumno

Nro. Cédula Curso Nombre Asignatura

123456789-0 IV Lenguajes de Programación 234567890-1 VIII Programación WEB

345678901-2 V Base de Datos I

Ocurrencia de

Relación

Ocurrencias de Atributos

Las ocurrencias de la relación, Alumno – recibe – Asignatura, serían la colección de todas las

filas que conforman la tabla anterior.

2.4.2. Representación del Modelo Entidad - Relación (MER).

En este modelo, las entidades fuertes se representan mediante un rectángulo, las débiles con

dos rectángulos, los atributos mediante líneas con círculos en el extremo, las relaciones

mediante rombos. El nombre del atributo que será clave, debe subrayarse y se debe poner de

izquierda a derecha o de arriba a abajo siendo las primeras las más significativas.

El MER tiene asociado las tres representaciones gráficas siguientes:

) Diagrama Entidad - Atributo (DEA): En el cual se representa cada entidad con sus

atributos, subrayando los atributos de la clave primaria.

Alumno

Nro. Carnet

Nombre Dirección

Nro. Carnet

ón

Page 15: Introduccion a las bases de datos full

) Diagrama Relación - Atributos (DRA): En el cual se representa cada relación con sus

atributos, en caso que las tenga.

) Diagrama Entidad – Relación (DER): Formado por los diagramas de Entidad –

Atributos y Relación – Atributos

Page 16: Introduccion a las bases de datos full

Las relaciones se deben nombrar con un verbo, las entidades con sustantivos que actúan como

sujeto y complemento cuando se asocian entre sí mediante una relación formando todo ello

una frase que describe la gestión que se realiza.

Así se puede leer: El alumno Pedro estudia Física ó la Física es estudiada por el alumno

Pedro.

2.4.3. Grado de una Relación.

El grado de una relación representa la participación en la relación de cada una de las entidades

asociadas y puede ser de tres tipos:

) De 1 a 1 (una a una): A cada ocurrencia de una entidad corresponde una y sólo una

ocurrencia de la otra y viceversa.

) De 1 a n (De una a muchas) o de n a 1 (De muchas a una): A cada ocurrencia de la

primera entidad pueden corresponderle varias ocurrencias de la segunda entidad y a

cada ocurrencia de la segunda le corresponde no más de una de la primera.

) De n a m (De muchas a muchas): A cada ocurrencia de la primera entidad pueden

corresponderle más de una ocurrencia de la segunda y viceversa.

Otra forma de representar el grado de una relación es mediante Æ (para el caso de una) ó

ÆÆ (para la relación de m). O se puede utilizar también ambas formas a la vez.

Page 17: Introduccion a las bases de datos full

2.4.4. Cardinalidad de una Entidad.

La cardinalidad de una entidad es una relación que mide el máximo y mínimo de la

participación de dicha entidad en la relación para expresar la cardinalidad teniendo en cuenta

la obligatoriedad de la ocurrencia vamos a utilizar la siguiente notación:

1: Indica que a cada elemento le corresponde al menos uno en la otra entidad

(obligatoriedad).

c: Indica que a un elemento de una entidad le puede corresponder uno o ningún elemento

de la otra entidad (no-obligatoriedad).

m: Indica que a un elemento de una entidad le corresponde uno o varios elementos de la

otra entidad (obligatoriedad).

n: Indica que a un elemento de una entidad le puede corresponder uno o varios elementos

de la otra entidad (no-obligatoriedad).

Ejemplo:

La entidad alumno en la relación estudia tiene una cardinalidad de “m”, ya que al alumno le

corresponde una o varias asignaturas. Sin embargo si existe alguna asignatura incluida en el

plan de estudios que no tiene ningún alumno matriculado, tiene cardinalidad n, es decir, la

asignatura puede tener uno, varios o ningún alumno matriculado.

Si hablamos de la cardinalidad existente entre departamento y asignatura tenemos que la del

departamento es m (comprende siempre una o varias asignaturas) y la cardinalidad de

asignatura es uno (ya que a una asignatura le corresponde uno y sólo un departamento).

Page 18: Introduccion a las bases de datos full

2.4.5. Operaciones sobre el Diagrama Entidad - Relación (DER).

Para entender la semántica del DER, se puede aplicar sobre sus componentes básicos

(Entidades, atributos, relaciones) diferentes operaciones.

) Generalización / Especialización: Permite formar un nuevo conjunto de entidades

mediante la unión de otros conjuntos de entidades o dividir un conjunto de entidades

en cierto número de otro conjunto de entidades (a esta última se le conoce como

especificación).

Se distinguen los trabajadores de una empresa de acuerdo con la organización que

ellos tienen. Usando la especialización podemos obtener una nueva entidad de

trabajadores.

Es necesario introducir un nuevo atributo, en el conjunto de entidad de trabajadores

(tipo de trabajador) para poder distinguir entre sus miembros las distintas clases de

trabajadores. Si por algún atributo propio de cada tipo de trabajador se pudieran

diferenciar unos de otros entonces no se necesitaría introducir el atributo diferenciante.

) La Agregación: Consiste en construir un nuevo conjunto de entidades sobre la base de

un conjunto de relaciones entre entidades.

Observemos que la relación ternaria obrero, máquina y piezas representan la idea de

que una actividad en la empresa se describe en término de que un obrero en alguna

máquina produce una cantidad determinada de piezas en una fecha dada. En el DER

esta situación no hubiera podido ser modelada correctamente ya que una relación no

puede relacionarse con otra relación.

Page 19: Introduccion a las bases de datos full

2.5. MODELOS LÓGICOS BASADOS EN REGISTROS.

Se utilizan para especificar los datos tanto a nivel de la estructura lógica general como una

descripción en un nivel mas alto de implementación pero no permiten especificar de forma

clara las limitaciones de los datos. Éstos pueden ser como ya se mencionó antes: relacional,

jerárquico, reticular.

2.5.1. Modelo Relacional.

Fue definido por E. F. Codd (1970), en este modelo tanto las Entidades como las Relaciones

se presentan mediante tablas.

PARTE ESTATICA (Objetos y Restricciones).-

OBJETOS:

Relación.- No se refiere a la asociación entre Entidades como en el MER, sino que está

estrechamente ligado a la definición matemática de una relación que se enuncia de la

siguiente forma:

“Dado una serie de conjuntos D1, D2,…Dn, R es una relación de estos n - conjuntos si es un

conjunto ordenado de n - ocurrencias tal que d1 pertenece a D1, d2 pertenece a D2,… y dn

pertenece a Dn. En donde los conjuntos D1, D2, …, Dn son Dominios de R.”

Atributos.- Son las propiedades o características de las Entidades y se corresponden con la

denominación o cabecera de una columna o cuerpo de una relación.

Dominio.- Es el conjunto de donde los atributos toman sus valores. Puede suceder que dos

atributos distintos de una misma relación, tomen sus valores del mismo dominio.

Page 20: Introduccion a las bases de datos full

Ejemplo:

El dominio de las edades contiene valores enteros de 18 a 60 años. El atributo edades toma

valores de ese dominio y otro atributo, por ejemplo antigüedad puede tomar también valor en

dicho dominio.

Atributos

NOMBRE EDAD SEXO

Juan Paez

Elsa Suárez

Teresa Pineda

30

22

19

M

F

F

Tupla.- La tupla es una Ocurrencia de la Entidad o conjunto de itens de información que

forma una fila de la relación.

Tabla.- Si se colocan todas las tuplas de una relación, una debajo de la otra alineando los

componentes de cada atributo en una columna y en la cabecera de cada columna el nombre de

su atributo, se obtiene la representación de la relación denominada tabla. Cada tupla forma

una fila de la tabla.

Grado.- El grado de una relación es el número de atributos o columnas que posee.

Cardinalidad.- Es el número de filas o tuplas de una relación.

Clave.- Se define clave de una relación a aquel o aquellos atributos que determinan de forma

unívoca y mínima a una tupla de la relación.

RESTRICCIONES:

Inherentes:

) No pueden aparecer dos filas iguales en una relación ) El o los atributos que forman parte de la clave no pueden tomar valores nulos o

desconocidos.

Opcionales:

) Están formadas por las dependencias funcionales, transitivas multivaloradas, etc.

PARTE DINAMICA.-

El modelo Relacional trabaja por especificación, es decir se especifica una condición que

debe cumplir un grupo de tuplas; para localizarlas. Por tanto el DML utilizado no es

procedural.

Page 21: Introduccion a las bases de datos full

RESUMEN.-

1. Una base de Datos Relacional está formada por un grupo de datos agrupados en

relaciones.

2. Las relaciones se presentan mediante tablas que contienen información homogénea.

3. Los distintos itens de información contienen tuplas y cada una se identifica con una

clave.

4. Cada tupla está formada por atributos cuyos valores no se pueden descomponer.

5. Los atributos se asignan a dominios siendo un dominio un conjunto de valores

posibles de un atributo.

6. Entre las bases de Datos Relacionales existentes en el mercado se encuentran:

DBASE, ORACLE, CLIPPER, FOXPRO, ACCES, etc.

EJEMPLO.-

Supongamos que deseamos representar una base de Datos, la información referente a las

asignaturas donde están matriculados diferentes alumnos de distintas facultades. Según el

modelo Relacional utilizaríamos la tabla: “Matrícula” que contiene atributos de los datos

referentes a Facultad, Alumno y Asignatura.

FACULTAD ALUMNO ASIGNATURA

Informática Luis Suárez Base de Datos

Informática Ana del Pozo Metodología

Informática Ana del Pozo Base de Datos

Exactas Juan Pino Geografía

Exactas Eva Martín Álgebra

Exactas Eva Martín Topología

Si la estructura de la tabla tiene un total de 100 bytes (Facultad = 50 bytes, Alumno = 30 bytes

y Asignatura = 20 bytes) para el ejemplo anterior que tiene 6 tuplas, los datos ocuparían 600

bytes (6 tuplas x 100 bytes = 600 bytes).

2.5.2. Modelo Jerárquico.

La representación se presenta en forma de árbol. Permite reducir la redundancia inevitable

que se produce en las Bases de Datos Relacionales.

PARTE ESTATICA (Objetos y Restricciones).-

OBJETOS:

Segmento.- Es un conjunto de datos homogéneos que se corresponde con las entidades. Se

diferencia el Segmento Raíz de los Segmentos Dependientes de acuerdo con la posición que

ocupe en la estructura jerárquica, y el Segmento Tipo de los Segmento de Ocurrencia, el

primero define a una identidad y el segundo a los datos de la identidad.

Page 22: Introduccion a las bases de datos full

Campo.- Es una parte bien definida del Segmento, y corresponde al concepto de atributo en el

Modelo Relacional

Dependencia o Relación Jerárquica.- Se denomina a la conexión que enlaza los Segmentos

Tipo. Entre dos segmentos sólo existirá una única conexión, del tipo de una a muchas (1:m).

RESTRICCIONES:

Inherentes.-

- Sólo se permite una relación entre dos segmentos. - No se permiten Relaciones Reflexivas.

- No se permite un Segmento Hijo con más de un Segmento Padre.

- El árbol se recorre en un cierto orden (Preorden).

- Es obligatorio entrar por el Segmento Raíz.

Opcionales.-

- No tiene debido a lo rígido que es.

PARTE DINAMICA.-

La selección se realiza por Navegación, es decir, segmento a segmento es por tanto un

Modelo Procedural.

RESUMEN.-

1. Sólo tiene un segmento Raíz.

2. Un Segmento Raíz puede tener cualquier número de Segmentos Tipo Dependientes.

3. Cada Segmento Tipo Dependiente del Segmento Raíz puede tener otros subordinados.

4. Para cada Segmento de Ocurrencia de todo Segmento Tipo puede haber cualquier

número de Segmento de Ocurrencia (tal vez cero) de cada uno de sus segmentos

dependientes.

5. Ningún Segmento Ocurrencia de Segmento Tipo Dependiente puede existir sin su

segmento Ocurrencia de nivel jerárquico superior.

6. Entre los Modelos Jerárquicos tenemos: IMS, MARK IV, SYSTEM 2000, para

ordenadores grandes.

EJEMPLO.-

Se debe determinar que entidades representan el problema, y cuál es el padre del que parte el

resto de segmentos.

Existen tres Segmentos y cada uno de ellos con un campo:

- Segmento Facultad - Nombre de la Facultad.

- Segmento Alumno - Nombre del Alumno.

- Segmento Asignatura - Nombre de la Asignatura.

Nota.- Generalmente tienen más campos pero se hizo así para simplificar.

Page 23: Introduccion a las bases de datos full

El segmento Raíz debe ser la Facultad ya que tiene dependencia con alumnos, y este a su vez

con las asignaturas matriculadas.

El árbol sería:

“Matrícula”

Facultad

Alumno

Asignatura

Los elementos representativos que antes hemos incluido en la tabla estarían dispuestos del

siguiente modo:

Informática Exactas

Luis Sáez Ana del Pozo

Base de Datos Base de Datos Metodología

Juan Pino Eva Martín

Geometría Álgebra Topología

En una estructura jerárquica ya sabemos que existen diferentes estructuras, una por cada

segmento y las ocurrencias de estas se enlazan mediante punteros.

La representación interna del árbol tiene una serie de punteros para asociar la información de

los segmentos.

Un ejemplo de representación interna sería:

Page 24: Introduccion a las bases de datos full

Luis Saez

Metodología

Juan Pino

Algebra

Directorio

Base de Datos

Informática

Ana del Pozo

Π

Π

Base de Datos

Geometría

Exactas

Π

Eva Martín

Π

Π

Topología

La estructura del árbol se conoce desde el momento en que se organizan los segmentos entre

sí y no depende de los datos que se incorporen después.

Si consideramos que los apuntadores ocupan 2 bytes, la estructura interna sería:

Estructura de los Segmentos.-

Facultad = 50 + 4 bytes (2 punteros) = 54 bytes

Alumno = 30 + 4 bytes (2 punteros) = 34 bytes

Asignatura = 20 + 2 bytes = 22 bytes

Ocurrencias en los segmentos.-

Facultad = 2 * 54 = 108 bytes

Alumnos = 4 * 34 = 136 bytes

Asignatura = 6 * 22 = 132 bytes

El árbol ocuparía un total de 376 bytes de memoria mucho menos que el relacional debido a la

eliminación de la información redundante.

Si le adicionamos los profesores que tiene la Facultad, sería:

Page 25: Introduccion a las bases de datos full

Luis Saez

Metodología

Juan Pino

Algebra

Facultad

Alumno Alumno

Asignatura

Y en este caso el segmento Facultad tendrá 3 punteros, una para sus ocurrencias hermanas y

otra para asociar a los profesores y otras para los alumnos.

Directorio

Dr. Carlos Nieto

Dr. Luis Peña

Π

Base de Datos

Informática

Ana del Pozo

Π

Π Dr. Luis Peña

Base de Datos

Π

Geometría

Exactas

Π

Eva Martín

Π

Π

Topología

Page 26: Introduccion a las bases de datos full

2.5.3. Modelo Reticular.

Este modelo fue propuesto para el grupo DBTG (Data Base Task Group) del comité

CODASYL.

PARTE ESTATICA (Objetos y Restricciones).-

OBJETOS:

Articulo o Registro.- Es un conjunto de datos homogéneos que constituye la unidad de

intercambio de información, entre las Bases de Datos y las aplicaciones. Es el equivalente a

las tablas y los segmentos.

Conjuntos.- Se denomina así a la asociación entre artículos. En cada conjunto existe un

articulo cabecera y uno o varios artículos miembros. Esto es similar a los Segmentos tipos y

los Segmentos de Ocurrencias.

RESTRICCIONES:

Inherentes.-

- No existen.

Opcionales.-

- Existen algunos determinados por las diferentes variantes del modelo.

PARTE DINAMICA.

La selección o búsqueda de los datos también se realiza por navegación, por tanto es un

modelo procedural.

RESUMEN.

1. Una base de datos reticular esta formada por un conjunto de datos homogéneos

llamados artículos o registros.

2. Las asociaciones entre artículos se denominan conjuntos

3. Ejemplos de Bases de Datos reticulares: DMS, TOTAL, DBMS, etc.(Todas son

propias de maquinas grandes) mainframes.

El modelo reticular se utiliza para representar objetos que tienen entre sí una dependencia

mucho mayor que la asociación jerárquica. Está especialmente diseñada para cardinalidades

de muchos a muchos (n : m).

Page 27: Introduccion a las bases de datos full

EJEMPLO.

Si un alumno pudiera matricularse en varias facultades, por ejemplo: la estudiante Ana del

Pozo se incorporara a la facultad de ciencias exactas y se matricula en una asignatura de esa

Facultad.

En el modelo relacional, los datos se repiten en tuplas y por tanto las relaciones de n:m se

pueden mantener duplicando la información. Por lo tanto el modelo Relacional seria:

Modelo Relacional:

FACULTAD ALUMNO ASIGNATURA

Informática Ana del Pozo Base de Datos

Informática Ana del Pozo Metodología

Exactas Ana del Pozo Algebra

En el modelo jerárquico, no se repiten los datos de un padre para diferentes hijos, pero si

existen hijos de diferentes padres con la misma información, no quedando mas remedio que

duplicar los datos del hijo, pues solo se permite a un hijo tener un solo padre.

Entonces en el modelo jerárquico seria:

Modelo Jerárquico

Informática Exactas

Luis Sáez Ana del Pozo

...... Base de Datos Metodología

Ana del Pozo

Álgebra

Eva Martín

...... ......

En el modelo reticular se permite que un hijo tenga mas de un padre y entonces el diseño

seria:

Facultad Alumno Asignatura

Entonces:

Informática Exactas

Luis Sáez Ana del Pozo

Base de Datos Metodología

Eva Martín Juan Pino

Álgebra ...... ......

Si se analiza esta representación gráfica se puede apreciar cuales son los alumnos que están

Page 28: Introduccion a las bases de datos full

matriculados y cuales son las asignaturas que cada uno de ellos cursa. Pero no se conocen

cuales son las asignaturas que el alumno tiene matriculadas en una facultad o en la otra, se

puede dar el caso incluso que una misma asignatura tenga el mismo nombre en 2 facultades

diferentes.

El grafo que sí mantendría consistencia de la información que queremos representar, sería el

siguiente:

Informática Exactas

Luis Sáez Ana del Pozo Eva Martín Juan Pino

Base de Datos Metodología Álgebra Topología Geometría

2.6. REDUCCIÓN DEL MODELO ENTIDAD - RELACIÓN AL MODELO

RELACIONAL. Si consideramos tan solo las relaciones binarias de las distintas combinaciones posibles, considerando tanto el Grado, como la cardinalidad, veremos entonces cómo convertir estas Entidades y Relaciones

del DER en tablas del Modelo Relacional.

1. Para la cardinalidad de 1:1; 1:C; C:1; C:C; sólo se necesita una tabla relacional para ambas

entidades, tomando como clave primaria cualquiera de las claves de las entidades, aunque se deba

tomar la que pertenezca a la entidad más dominante.

Ejemplo:

La tabla resultante será:

- Vend -Zona (CV, NV, DV, CZ, NZ)

2. Cuando la cardinalidad es 1: n; 1: m; c: n; c: m; se necesitan 2 tablas, una para cada entidad,

utilizándose la clave de cada entidad como clave de la tabla correspondiente. La clave de la

entidad que está en extremo “1” ó “C” se añade como un atributo más a la tabla del extremo, “n” ó “m”; para mantener esa relación.

Ejemplo:

Page 29: Introduccion a las bases de datos full

Las tablas resultantes serán:

- Profesor (CP, NP, NCP)

- Asignatura (NUA, NOA, CP)

3. Si la cardinalidad es n: m; m: n; n: n; m: m; las tablas estarán formadas, uno por las entidades

asociadas siendo la clave correspondiente a la entidad que representa y además una tercera formada por los atributos de las claves de ambas entidades y los atributos propios de la relación.

Ejemplo:

Las tablas resultantes serán:

- Trabajador (CT, NT)

- Pieza (CP, DP, UM)

- Trab-Pieza (CT, CP, C, F)

4. Representar a cada entidad generalizada en una tabla que contenga la clave de la generalización y

sus atributos propios.

Ejemplo:

Page 30: Introduccion a las bases de datos full
Page 31: Introduccion a las bases de datos full

La tabla resultante será:

- Trabajadores (CT, TT, ST)

5. Representar cada entidad especializada en una tabla que contendrá la clave de la generalización y

los atributos propios de la especialización.

Las tablas resultantes serán:

- Directorios = (CT, HT, PS) - Indirectos = (CT, CL, CTA, TA)

6. Representar a cada entidad agregada en una tabla con sus correspondientes atributos y claves si las

tienen y las claves de las entidades agregadas como atributos.

Ejemplo:

La tabla resultante será:

- Publicación (CP, FP, CPP, CL, CE)

7. Representar a la entidad débil en una tabla que contendrá la clave de la entidad básica

determinante y los atributos de la entidad débil.

NOTA: No se pone como Llave Externa como en el caso de 1:m sino como “Llave”

La tabla resultante será:

- Hijos (CT, CH, EH)

Page 32: Introduccion a las bases de datos full

2.7. EJERCICIOS PROPUESTOS. Represente mediante el Diagrama Entidad – Relación y realice la reducción al Modelo

Relacional las siguientes situaciones:

2.7.1.- En una fábrica de materiales textiles que produce dos tipos de productos: telas e

hilos. De las telas se conoce el código, el tipo y el ancho. De los hilos se conoce

código, la utilidad y el color. De esta fábrica se conoce el nombre, dirección y

teléfono, y tipo de producto que se produce como identificador de la especialización.

Los productos que son fabricados en dicha fábrica son comprados por una fábrica de

pantalones de la que se conoce su nombre, dirección, teléfono y área que ocupa; por

cada compra se determina la fecha de compra. Las fábricas de materiales textiles

venden a muchas fábricas de pantalones así como las fábricas de pantalones compran

telas e hilos a diferentes fábricas de materiales textiles.

Las fábricas de pantalones tienen obreros de dos tipos de planta y temporales de los

que se conoce su cédula de identidad, nombre y dirección. Además de los obreros de

planta se conoce sus años de trabajo y educación realizada; y de los temporales se

conoce la profesión y quien recomienda. Los obreros de planta utilizan diferentes

telas para producir pantalones y las telas son usadas por diferentes obreros.

2.7.2.- En una Universidad del país existen dos grupos de alumnos: el primero lo conforman

los alumnos becados de los que se conoce su número de la lista y la residencia en que

vive; y el segundo lo conforman los que no están becados, de los que se conoce su

nombre y dirección. De los alumnos no becados sabemos que realizan trabajos

voluntarios (mingas), mientras que los becados hacen experimentos, de los que se

conoce el número del experimento y la materia en que se desarrolla; y que cada

experimento es realizado por varios alumnos y éstos sólo pudieran realizar un

experimento.

Los trabajos voluntarios son realizados por varios alumnos y éstos pueden hacer

varios trabajos voluntarios de los que conocemos: el número del trabajo, el lugar y el

trabajo desempeñado. De cada trabajo realizado por los estudiantes se conoce la

fecha en que fue realizado. De todos los alumnos se conoce el número de Cédula de

Identidad y la Facultad en que estudian, además se sabe: el código, la cantidad de

Horas semanales y el Contenido de las materias que reciben Los alumnos reciben

varias materias y éstas son impartidas a muchos alumnos.

2.7.3.- En el sistema de Enseñanza Primaria del país existen varias escuelas las que se

identificarán por su nombre y dirección. Todas las escuelas dependen de un Ministro

del que se conoce su Cédula de Identidad y Nombre.

En cada escuela hay varias aulas de las que sabemos su número y cantidad de

pupitres y a su vez tenemos varios grupos de los que se conoce su grado y la

cantidad de estudiantes. En cada aula estudia un solo grupo y este sólo recibe clases

en un aula.

Page 33: Introduccion a las bases de datos full

En algunas ocasiones las aulas son prestadas a diferentes fábricas para que se den

clases por las noches y de la fábrica conoceremos su nombre y dirección. Cada vez

que prestan las aulas a la fábrica contabilizamos lo que obtenemos por concepto de

arriendo.

2.7.4.- En una universidad tenemos varios grupos de alumnos, los que se identifican por el

nivel y la cantidad de estudiantes, pero además de las mujeres conocemos su Cédula

de Identidad y edad, y que realizan experimentos fuera de la escuela; y de los

varones conocemos su Cédula Militar y la estatura, y que estos realizan trabajos

voluntarios fuera de la escuela.

Cada experimento es realizado por varias alumnas y estas sólo realizan un

experimento y de este sabemos el Número del experimento y la materia en que es

desarrollada.

Los trabajos voluntarios son realizados por varios alumnos (varones) y estos realizan

varios trabajos voluntarios de los que se sabe: el número del trabajo, el lugar en que

es realizado y el trabajo a realizar.

Los grupos tienen aulas de las que conocemos su número y cantidad de pupitres.

Cada aula tiene varios grupos y varios grupos tienen solo un aula y esto constituye la

universidad de la que conocemos su número y nombre, y sabemos que depende al

igual que de todas las universidades del director del Conesup del que se conoce su

Cédula de Identidad y Nombre.

De cada grupo que tiene un aula conocemos el horario y las asignaturas que se

imparten.

2.7.5.- En una empresa Metalúrgica se desea llevar el control de las reparaciones que se le

realizan a las máquinas. En la empresa existen numerosas Máquinas, de cada una se

conoce el número de inventarlo, su costo, el valor de la depreciación, el código de su

tipo y el taller donde está ubicada. Para cada tipo de Máquina se conoce su código, la

descripción y la frecuencia en que le toca el mantenimiento. En un taller existen

varias máquinas y de cada taller se conoce su número, nombre y cantidad de obreros

directos y auxiliares que trabajan en él. En la empresa los obreros auxiliares son los

encargados de la reparación de todas las máquinas. Cada obrero se Identifica por su

número de Identidad y de él se conoce además su nombre, categoría laboral (auxiliar

o directo) y años de experiencia. Una Máquina es reparada siempre por el mismo

obrero y un obrero repara varias máquinas, pero se sabe que en una fecha dada un

obrero repara una sola máquina.

2.7.6.- En una empresa de la industria mecánica se fabrican distintos tipos de piezas. Para

cada una se conoce su código que la identifica, descripción y peso unitario. Sobre

cada pieza se realizan distintas operaciones(corte, fresado, etc.) en una fecha

determinada; constituyendo éste, el proceso de fabricación, del que se conoce su

código y la descripción. Acerca de las operaciones se conoce su código y nombre.

Una operación se aplica a diferentes piezas; además en un proceso de fabricación una

pieza pasa por diferentes equipos que pueden realizar diferentes operaciones sobre

diferentes piezas y una operación puede ser realizada en diferentes equipos. De cada

Page 34: Introduccion a las bases de datos full

equipo se conoce su nombre, modelo y país de procedencia. Una operación realizada

sobre una pieza en un equipo dado constituye una norma que se identifica por un

código y tiene asociados una descripción y un tiempo de ejecución.

En la empresa trabajan obreros de dos tipos distintos: directos y auxiliares. Un obrero

directo trabaja con el cumplimiento de diferentes normas y una norma puede ser

aplicada a distintos obreros directos. Un obrero directo cumple una norma dada en un

determinado porciento. Un obrero auxiliar realiza el mantenimiento de diferentes

equipos y un equipo dado siempre es atendido por un mismo obrero auxiliar. Para

cada equipo atendido por un obrero auxiliar dado se conoce el tipo de mantenimiento

efectuado y la última fecha en que se realizó. Todos los obreros de la fábrica están

caracterizados por un número, su nombre, calificación laboral y categoría

ocupacional (directo o auxiliar)

2.7.7.- El Instituto de Aeronáutica Civil de Cuba cuenta con información sobre las

diferentes compañías de aviación que existen en el mundo. De cada compañía se

conoce su nombre (Cubana, Interflug, etc.), su volumen anual de ventas y un código

que la identifica. Cada compañía puede estar representada en diferentes países y en

un país estar representadas diversas compañías. De cada país se conoce su código,

nombre, idioma y moneda

También se sabe que por vía aérea se realizan diferentes viajes. Cada viaje posee un

código, un lugar de origen, un destino y una cantidad de kilómetros a recorrer.

Además, se conocen que existen distintos tipos de aviones. Cada tipo de avión se

identifica por un nombre (IL-62, DC-10, etc.) y posee un consumo de gasolina por

kilómetro y una cierta cantidad de asientos. Un mismo viaje puede ser realizado por

distintos tipos de aviones y un tipo de avión puede ser utilizado en diversos viajes.

Un viaje realizado por un tipo de avión constituye un vuelo y para cada vuelo se

conoce su número y tiempo de duración.

Una compañía de aviación realiza muchos vuelos y un vuelo puede ser cubierto sólo

por una compañía, para cada vuelo que ofrece una compañía se conoce el precio del

pasaje.

2.7.8.- El Instituto de Aeronáutica Civil de Cuba cuenta con información sobre las

diferentes compañías de aviación que existen en el mundo. De cada compañía se

conoce su nombre (Cubana, Interflug, etc.), su volumen anual de ventas y un código

que la identifica. Cada compañía puede estar representada en diferentes países y en

un país estar representadas diversas compañías. De cada país se conoce su código,

nombre, idioma y moneda

También se sabe que por vía aérea se realizan diferentes viajes. Cada viaje posee un

código, un lugar de origen, un destino y una cantidad de kilómetros a recorrer.

Además, se conocen que existen distintos tipos de aviones. Cada tipo de avión se

identifica por un nombre (IL-62, DC-10, etc.) y posee un consumo de gasolina por

kilómetro y una cierta cantidad de asientos. Un mismo viaje puede ser realizado por

distintos tipos de aviones y un tipo de avión puede ser utilizado en diversos viajes.

Page 35: Introduccion a las bases de datos full

Un viaje realizado por un tipo de avión constituye un vuelo y para cada vuelo se

conoce su número y tiempo de duración.

Los trabajadores del Instituto se clasifican en dos tipos distintos: internos y externos.

Un trabajador Interno controla varios vuelos y un vuelo puede ser controlado por

distintos trabajadores Internos. Un trabajador Interno controla un vuelo dado en un

determinado porciento. Un trabajador externo realiza la auditoria en varias

compañías y una compañía dada siempre es atendida por un mismo trabajador

externo, siempre y cuando sea auditada. Para cada compañía atendida por un

trabajador externo dado se conoce el tipo de auditoria efectuada y la fecha en que se

realizó. Todos los trabajadores del Instituto están caracterizados por un número y su

nombre.

Una compañía de aviación realiza muchos vuelos y un vuelo puede ser cubierto sólo

por una compañía, para cada vuelo que ofrece una compañía se conoce el precio del

pasaje.

2.7.9.- En la Empresa Cubana de Aviación se desea diseñar una base de datos relacional para

el control de los vuelos nacionales desde la cuidad de la Habana. Cada vuelo se

identifica con un número y de él se conoce además su aeropuerto de destino, hora de

salida, tiempo de duración, tripulación que lo realiza y tipo de avión. Cada

aeropuerto posee un código que lo identifica y de él se conoce también su nombre,

ciudad de ubicación y características técnicas de la pista. De cada tipo de avión se

tiene su nombre, que lo identifica, consumo de combustible, altura máxima de vuelo

y cantidad de pasajeros. De cada tripulación se conoce el código que la identifica, el

nombre del piloto, el nombre del copiloto y el del sobrecargo. Un mismo vuelo

puede salir en varios días diferentes de la semana y en un mismo día salen muchos

vuelos. Un vuelo siempre es conducido por la misma tripulación, aunque una

tripulación puede conducir varios vuelos. Sin embargo, se sabe que en un día de la

semana dado, una misma tripulación siempre conduce el mismo vuelo.

2.7.10.- En un organismo se desea llevar el control del movimiento mercantil. En el

organismo existen mercancías de las que se conoce su código, nombre y unidad de

medida. Las mercancías proceden de diferentes países de los que se conoce su

código, nombre y el tipo de moneda. Para la transportación de las mercancías existen

diversas formas, cada una de las cuales se caracteriza por su tipo y una tarifa. De un

país se importan varias mercancías y una mercancía puede venir de varios países.

Para cada mercancía importada de un país existen diferentes formas de

transportación y una forma de transportación puede serlo a su vez de diferentes

mercancías de diferentes países. Una mercancía procedente de un país y transportada

de una forma dada constituye un embarque y para este se conoce su número y la

fecha de arribo.

Un embarque se distribuye entre diferentes almacenes y en un almacén se tienen

diferentes embarques, cada uno con cierta cantidad. De cada almacén se tiene su

código, dirección y capacidad de almacenamiento. Un almacén distribuye productos

Page 36: Introduccion a las bases de datos full

a diferentes empresas y cada empresa recibe productos solamente de un almacén.

Una empresa se caracteriza por su número, nombre y rama económica.

Las empresas pueden establecer relaciones solamente con un almacén. A su vez las empresas

pueden establecer relaciones comerciales con algunas unidades de ventas en caso que las

tenga. De cada unidad se conoce su dirección, nombre del gerente y capacidad de venta.