Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Diseño de Bases de Datos: Modelo Entidad-Relación y Modelo Relacional, Ejercicios de Programación Java

se plantea sobre guía básica que es la materia de base de datos, orientada específicamente a estudiantes que toman la materia

Tipo: Ejercicios

2019/2020

Subido el 22/05/2020

usuario desconocido
usuario desconocido 🇧🇴

1 / 13

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
¿Por qué crear un diseño de base de datos?
El modelo ER describe los datos requeridos para los negocios. Este modelo debería ser
totalmente independiente de algunas consideraciones que se realizan para la
implementación. Este mismo modelo ER podría también ser usado como una base para
la implementación de algún tipo de DBMS o incluso un sistema de archivos.
Un modelo ER es una representación de muy alto nivel el cual no puede ser
implementado tal y como está.
Las personas que crean estos modelos no pueden estar conscientes de lo físico y las
necesidades de la base de datos, pero ellos tendrán que proporcionar una solución
conceptual “laborable”. Esto es, por que es importante tener un modelo ER de acuerdo
a la realidad y validado antes de ir al diseño de la base de datos física.
Transformando el modelo ER, se crea un “primer corte” del diseño de la base de
datos. Este diseño del primer corte es pensado para servir como una nueva base para
definir la implementación física de la base de datos.
Este nuevo modelo puede ser fácilmente usado para las discusiones futuras entre
diseñadores y desarrolladores, y administradores de bases de datos.
Presentación y Orígenes del Modelo Relacional
El modelo Relacional fue introducido por Codd en el año 1970.
Es un Modelo de Datos Lógico - de Representación (basado en registros).
El modelo más usado en las aplicaciones comerciales de procesamiento de datos
convencional. Esta dividido en 3 partes:
pf3
pf4
pf5
pf8
pf9
pfa
pfd

Vista previa parcial del texto

¡Descarga Diseño de Bases de Datos: Modelo Entidad-Relación y Modelo Relacional y más Ejercicios en PDF de Programación Java solo en Docsity!

¿Por qué crear un diseño de base de datos?

El modelo ER describe los datos requeridos para los negocios. Este modelo debería ser totalmente independiente de algunas consideraciones que se realizan para la implementación. Este mismo modelo ER podría también ser usado como una base para la implementación de algún tipo de DBMS o incluso un sistema de archivos.

Un modelo ER es una representación de muy alto nivel el cual no puede ser implementado tal y como está.

Las personas que crean estos modelos no pueden estar conscientes de lo físico y las necesidades de la base de datos, pero ellos tendrán que proporcionar una solución conceptual “laborable”. Esto es, por que es importante tener un modelo ER de acuerdo a la realidad y validado antes de ir al diseño de la base de datos física.

Transformando el modelo ER, se crea un “primer corte” del diseño de la base de datos. Este diseño del primer corte es pensado para servir como una nueva base para definir la implementación física de la base de datos.

Este nuevo modelo puede ser fácilmente usado para las discusiones futuras entre diseñadores y desarrolladores, y administradores de bases de datos.

Presentación y Orígenes del Modelo Relacional

 El modelo Relacional fue introducido por Codd en el año 1970.  Es un Modelo de Datos Lógico - de Representación (basado en registros).  El modelo más usado en las aplicaciones comerciales de procesamiento de datos convencional. Esta dividido en 3 partes:

  1. Estructura de Datos
  2. Integridad de Datos (características generales)
  3. Manipulación de Datos

Estructura de datos relacional

En el Modelo Relacional es una: Base de Datos = Conjunto de RELACIONES

  • Relación está representada mediante una Tabla con filas y columnas
    • Estructura de datos fundamental del modelo
    • Representa una entidad genérica
    • Tiene un nombre
    • Conjunto de FILAS

 Cada fila representa una entidad concreta

  • Compuesta de COLUMNAS, con nombre

 Cada columna representa un atributo de la entidad

Modelo basado en Teoría matemática

  • Analogía entre Relación (concepto matemático) y Tabla
  • Teoría de Conjuntos y Lógica de Predicados de 1er orden
  • Tiene una sólida Base Formal Ejemplo

EMPLEADO

Id Nombre Dirección Fecha_nacimiento Id_Dpto 126 Flores 2, Munaypata 03-03-66| 10 349 Leon 53, El Alto 10-08-77 20 785 Condori 08-12-55 10

Términos Básicos en el Modelo Relacional

Relación (Tabla):. Una tabla es una estructura muy simple en el cual los datos son organizados y almacenado. Las tablas tienen columnas y filas. Cada columna es usada para almacenar un tipo de valor. En el ejemplo, la tabla EMPLEADO es la estructura para almacenar información acerca de los empleados.

Columnas

Filas

Llave primaria

Llave Foránea

Columnas llaves únicas

Dos personas distintas con el mismo CI Un empleado sin Id Un alumno con -29 años Una película sin director

 La definición de la BD (esquema) necesita incluir: REGLAS DE INTEGRIDAD

Reglas de Integridad

El modelo de datos conceptual es un proceso paso a paso para documentar requerimientos de información que es concerniente a la estructura de datos y las reglas de integridad de los datos. Las reglas de negocio son especificaciones que preservan la integridad del modelo lógico. Hay cuatro tipos de reglas de negocio:

Integridad de EntidadIntegridad Referencial.Dominio.  Operaciones Triggers

Las reglas de integridad informan al SGBD de restricciones del mundo real.

 Así, el SGBD evita configuraciones de datos imposibles  Aumentan la capacidad expresiva del modelo relacional  Son específicas de cada BD particular, pero el Modelo Relacional incluye...

o Características generales de integridad importantes y necesarias en toda BD o Claves Candidatas y Primarias o Claves Ajenas (o foráneas o externas)

clave ajena (externa o foránea)

Conjunto de atributos FK de una relación R2, tal que:

  1. Existe otra relación R1 con clave primaria PK , y
  2. Cada valor de FK en R2 es idéntico al de PK en alguna tupla de R

“Una clave foránea es un conjunto de atributos de una relación que hace referencia a la clave primaria de otra relación (o la misma).”

 PELICULA (título, género, duración, director , ...) DIRECTOR (nombre, nacionalidad, ...)

 EMPLEADO (codEmp, nombre, jefe , nss, ...)

 LIBRO (título, isbn, autor , editorial, edición, año, ...) ESCRITOR (dni, nombre, ...) ARTICULO (título, tema, autor , revista, página, ...)

Cada componente de una FK debe estar definido sobre el mismo dominio que el correspondiente atributo de la PK a la que referencia

PACIENTE (nss, nombre, dirección, ...) HISTORIAL ( nss , especialidad, fechaApert, ...) VISITA ( nss, especialidad , numVisita, fecha, ...)

 La clave Ajena puede ser Simple o Compuesta  El uso de Claves Ajenas facilita a:

o Eliminación de la Redundancia: Integridad entre ficheros o Mecanismo del Modelo Relacional de datos para establecer VÍNCULOS ENTRE RELACIONES

EJEMPLO

En las siguientes relaciones:

CUENTA NUMERO SALDO … 200 35000 505 45000 821 30000 …

CLIENTE NOMBRE DIRECCION CIUDAD CUENTA García San Pedro La Paz 200 Lopez Santa Rosa El Alto 821 Blanco Villa Fátima La Paz 505 …

Cada cliente sólo puede tener una cuenta a su nombre. Una cuenta puede tener más de un cliente como titular.

Valores Nulos

En el mundo real existe...

Vinculo cliente cuenta

Terminología de Mapeo

ANÁLISIS DISEÑO Modelo ER Diseño físico

Entidad Tabla Atributo Columna Relación Llave foránea identificador único primario Llave primaria identificador único secundario Llave única

Cambiando de una palabra a otra (????), también cambiando los significados de la terminología.

Usando bases muy simples:

Una entidad se lleva a una tabla Un atributo se vuelve una columna Un identificador único primario produce una llave primaria Un identificador único secundario produce una llave única Una relación es transformada en una llave foránea o columnas de llave foránea

Mapeo Básico

Mapeo de entidades

Transformar entidades en tablas usando su propia convención de la denominación o el nombre previamente escrito.

EMPLEADO

Usted puede expresar la estructura de una relación por una notación más corta en la cual el nombre de la relación es seguida por braquetas para el nombre de los atributos en la relación. El atributo de la clave primaria es subrayada.

Del ejemplo anterior tenemos:

Cod_Emp Nombre Departamento Salario 100 Maricela Perez Marketing 42. 140 Felipe Quispe Conflictos 100. 110 Eduardo Leaño Académico 50. 190 Evo Morales Adepcoca 700.

EMPLEADO <Cod_Emp, Nombre, Departamento, Salario>

o

EMP<Cod_Emp, Nombre, Departamento, Salario>

La llave primaria de la entidad (o identificador) se transforma en la llave primaria de la relación correspondiente.

Mapeo de relaciones

El procedimiento para mapear relaciones depende del grado de la relación y la cardinalidad.

Obtención de las relaciones a partir del diagrama E/R

A continuación se estudia la forma de determinar las relaciones preliminares, empezando por las relaciones de cardinalidad 1:1 hasta las m:n, para terminar con las de grado superior.

Relaciones preliminares para la correspondencia binaria de cardinalidad

Regla 1.

Si la correspondencia es binaria y la cardinalidad es 1:1 y es obligado el tipo de participación de ambas, sólo es necesario una relación. Como clave primaria de la relación se puede tomar cualquiera de las claves de la entidad .”

R

Cuando alguna de las relaciones deja de ser obligatoria para ser opcional, aparecen atributos en blanco. Para subsanar anomalías es necesario definir una nueva regla.

E1 R E

1: (1:1) (1:1)

b b a

a

a1 a2 b1 b

cardinalidad 1: N

Regla 4 “Si la correspondencia es binaria y la cardinalidad es 1:n y la entidad del lado «n» es 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 la entidad «n» contiene la clave de la entidad «1»”.

E1 E

Regla 5

“Si la correspondencia es binaria y la cardinalidad 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 las entidades es la clave primaria de la entidad correspondiente; la relación con la correspondencia contendrá las claves de las entidades.”

E1 R E

Relaciones para correspondencias binarias de cardinalidad N:M

Regla 6

E1 R E

1:N (1:1) ( 1 :N)

b a

a

b

a 1 a 2 b^1 b^2 a^1

E1 R E

1:N (1:1) (0:N)

b a

a

a1 a2 a1 b1 b 1 b 2

b

“Si la correspondencia es binaria y la cardinalidad es m:n se necesitan tres relaciones una para cada entidad y la 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 deberá contener las claves de las entidades.”

E1 R E

Relaciones preliminares para las correspondencias ternarias

Regla 7 “Si existe una correspondencia ternaria se necesitan cuatro relaciones, una para cada entidad, y una más para la correspondencia. La clave de las relaciones de las entidades es la clave primaria de la entidad correspondiente. La relación que contenga los datos de la correspondencia contendrá entre sus atributos las claves de las entidades.”

E1 E2 E

Relaciones para la agregación

La transformación de un diagrama ER que incluye agregación a una forma tabular es directa. Por ejemplo, sea:

E1 R E

N:N (1:N) (1:N)

b a

a

a1 a2 a1 b1 b 1 b 2

b

(0:N) (0:N)

E1 R E

N:N

b a

a

a1 a2 b1 b2 c 1 c 2

b

E

c C

c1 b1 c

una columna para cada atributo de la clave primaria del conjunto de entidades del nivel más alto. Así, para el diagrama ER de la figura tenemos tres tablas:

cuenta, con atributos número_cuenta y saldocuenta_ahorro, con atributos número_cuenta y tasa_interéscuenta_cheques, con atributos número_cuenta y saldo_deudor

  1. No crear una tabla para el conjunto de entidades de nivel más alto. En cambio, para cada conjunto de entidades de nivel más bajo, crear una tabla que incluye una columna para cada uno de los atributos de ese conjunto de entidades más una columna para cada atributo del conjunto de entidades de nivel más alto. Entonces, para el diagrama ER de la figura, tenemos dos tablas.

cuenta_ahorros , con atributos número_cuenta y tasa_interéscuenta_cheques con atributos número_cuenta y saldo_deudor