diseño de un esquema e – r a tablas mc beatriz beltrán martínez benemérita universidad...

Post on 22-Jan-2016

220 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Diseño de un esquema E – R

a tablasMC Beatriz Beltrán Martínez

Benemérita Universidad Autónoma de Puebla

Diseño de un esquema

Un modelo de datos que se ajusta a un esquema de bases de datos E – R se puede representar por medio de tablas.

Se forma una tabla única por cada conjunto de: Entidades de la base de datos. Relaciones de la base de datos.

Cada tabla tendrá sus columnas con un nombre único.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 2

Entidades fuertes

Sea E un conjunto de entidades fuertes con los atributos descriptivos a1, a2, ..., an.

Esta entidad se representa mediante una tabla llamada E con n columnas distintas.

Cada fila de la tabla corresponde a una entidad del conjunto de entidades E.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 3

Entidades fuertes

El conjunto de entidad préstamo, queda:

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 4

D1 denota el conjunto de todos los números de préstamos, D2 denota el conjunto de todos los saldos.

Cualquier fila consiste de tuplas (v1, v2) donde v1 esta en el conjunto D1 y v2 en D2.

Num_prest Importe

Entidades fuertes

El conjunto de todas las filas posibles de esta tabla es el producto cartesiano de D1 y D2 denotado por: D1xD2.

En general, si se tiene una tabla de n columnas, se denota por el producto cartesiano de D1, D2, ..., Dn por D1xD2... xDn.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 5

Entidades débiles

Sea A un conjunto de entidades débiles con los atributos a1, a2, ..., am.

Sea B el conjunto de entidades fuertes del que A depende.

Sea la clave primaria de B el conjunto de atributos b1, b2, ..., bn.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 6

Entidades débiles

Se representa el conjunto de entidades A mediante una tabla llamada A por cada uno de los atributos del conjunto: {a1, a2, ..., am} {b1, b2, ..., bn}

El conjunto pago quedaría:

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 7

Num_pago Fecha_pago Importe Num_prest

Conjunto de relaciones

Sea R un conjunto de relaciones.Sean a1, a2, ..., am el conjunto de atributos formados por la unión de las claves primarias de cada uno de los conjuntos de entidades que participan en R.Sean b1, b2, ..., bn los atributos descriptivos de R, si los hay.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 8

Conjunto de relaciones

El conjunto de relaciones se representa mediante una tabla llamada R con una columna por cada uno de los atributos del conjunto: {a1, a2, ..., am} {b1, b2, ..., bn}

El conjunto prestatario quedaría:

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 9

Id_empleado Num_prest

Redundancia de tablas

Un conjunto de relaciones uniendo un conjunto de entidades débiles con el correspondiente conjunto de entidades fuertes es un caso especial.

La tabla para este tipo de relaciones es redundante y no es necesario que esté presente en una representación tabular de un diagrama E – R.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 10

Combinación de tablas

Considerar el conjunto de relaciones AB, varios a uno del conjunto de entidades A al conjunto de entidades B y con participación total.

Se obtienen tres tablas. Se pueden combinar las tablas A y AB

para formar una única tabla que sea la unión de ambas.

En una relación uno a uno, la tabla se puede combinar con cualquiera del conjunto de entidades.

Las tablas se pueden combinar incluso si la participación es parcial, usando valores nulos.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 11

Atributos compuestos y derivados Los atributos compuestos, se

manejan creando un atributo separado por cada uno de los atributos componentes.

No se crea una columna separada para el propio atributo compuesto.

Si dirección esta compuesto por calle y ciudad; se crea en la tabla las columnas calle_dir, ciudad_dir, dirección no tiene una columna.

Los atributos derivados no crean ninguna entrada dentro de las tablas.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 12

Atributos multivalorados

Para estos atributos se crea, como excepción; una tabla nueva.

Para el atributo multivalorado M se crea la tabla T con una columna C que corresponde a la clave primaria del conjunto de entidades o conjunto de relaciones del que M es atributo.

La columna C aparece en el conjunto de entidad donde esta el atributo multivalorado.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 13

Generalización

Hay dos métodos para transformar a forma tabular un diagrama de E – R:1. Crear una tabla para el conjunto

de entidades de nivel más alto. Para cada conjunto de entidades de nivel más bajo, crear una tabla que incluya una columna para cada uno de los atributos de ese conjunto de entidades más una columna por cada atributo de la clave primaria del conjunto de entidades del nivel más alto.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 14

Generalización

2. Se tiene cuando la generalización es disjunta y completa. No se crea una tabla para el conjunto de entidades de más alto nivel. En su lugar, para cada conjunto de entidades de mas bajo nivel se crea una tabla que incluya una columna por cada atributo del conjunto de entidades de nivel más bajo más una columna por cada atributo del conjunto de entidades de nivel más alto.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 15

Generalización

Con el primer método se tendrían las tablas: Cuenta, con atributos: No_cta,

Saldo. Cta_Ahorro, con atributos:

No_cta, TasaInterés. Cta_Cheque, con atributos:

No_cta, SaldoDeudor. Con el segundo método se tendrían

las tablas: Cta_Ahorro, con atributos:

No_cta, Saldo, TasaInterés. Cta_Cheque, con atributos:

No_cta, Saldo, SaldoDeudor.MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 16

Agregación

Se agrega una columna en la relación agregada por cada atributo de clave primaria del conjunto de entidades que esta asociado y con el conjunto de relaciones al que esta unido.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 17

Modelo Lógico de Bases de

DatosMC Beatriz Beltrán Martínez

Benemérita Universidad Autónoma de Puebla

Modelo Relacional

Consiste de un conjunto de tablas a cada una de las cuales se les asigna un nombre exclusivo.

Cada tabla tiene la estructura, donde cada fila de la tabla representa una relación entre un conjunto de valores.

Las columnas se les conoce como atributos.

Para cada atributo hay un conjunto de valores permitidos, llamado dominio de ese atributo.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 19

Definiciones

Se utiliza los términos matemáticos tupla en lugar de fila; y relación (o varrel – variable de relación) en lugar de tabla.Se exige que para toda relación (varrel) r, los dominios de todos los atributos de r sean atómicos.Un dominio es atómico si los elementos del dominio se consideran indivisibles.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 20

Definiciones

Se define una relación como subconjuntos de productos cartesianos de los dominios.

Una variable tupla es una variable que representa a una tupla, esto es, una tupla que representa al conjunto de todas las tuplas.

El orden en que aparecen las tuplas es irrelevante, dado que una relación es un conjunto.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 21

Dominio

No se admiten valores múltiples, por lo tanto la intersección de un renglón con una columna tiene un sólo valor, nunca un conjunto de valores.

Es posible que varios atributos tengan el mismo dominio.

Un valor de dominio que es miembro de todos los dominios posibles es el valor nulo, que indica que el valor es desconocido o no existe.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 22

Tuplas

Como cada atributo tiene un dominio, el cual es una descripción física y lógica de valores permitidos: No existen 2 tuplas en la tabla que

sean idénticas. No hay un orden entre tuplas o

atributos. La información en las bases de

datos son representados como datos explícitos, no existen apuntadores o ligas entre las tablas.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 23

Clave primaria

Se consideran los conceptos de: Superclave: es un conjunto de uno

o más atributos que tomados colectivamente, permiten identificar de forma única una entidad en el conjunto de identidades.

Claves candidatas: superclaves minimales.

Clave primaria: denota una clave candidata que es elegida como elemento principal para identificar la entidad.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 24

Modelo Relacional

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 25

DEPTO DEPTO# DEPTO# NOMDEPTO NOMBRE PRESUPUESTO DINERO

D1 Comercialización 10000000

D2 Desarrollo 12000000

D3 Investigación 5000000

Relación

Clave Primaria

Tupla

Atributos

DEPTO# NOMBRE DINERODominio

Car

dina

lida

d

Grado

Álgebra Relacional

MC Beatriz Beltrán Martínez

Benemérita Universidad Autónoma de Puebla

Álgebra Relacional

El modelo relacional se basa en el modelo relacional de datos.

De manera intuitiva, significa que en dichos sistemas hay:1. Aspecto estructural.2. Aspecto de integridad.3. Aspecto de manipulación.

Operación restringir. Operación proyectar. Operación juntar.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 27

Operaciones

Sea:

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 28

DEPTO DEPTO# NOMDEPTO PRESUPUESTO

D1 Comercialización

10000000

D2 Desarrollo 12000000

D3 Investigación 5000000EMP EMP# NOMEMP DEPTO# SALARIO

E1 López D1 40000

E2 Cheng D1 42000

E3 Pérez D2 30000

E4 Hernández D3 35000

Restringir

DEPTO where PRESUPUESTO > 8000000.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 29

DEPTO# NOMDEPTO PRESUPUESTO

D1 Comercialización 10000000

D2 Desarrollo 12000000

Proyectar

DEPTO {DEPTO#, PRESUPUESTO}

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 30

DEPTO# PRESUPUESTO

D1 10000000

D2 12000000

D3 5000000

Juntar (join)

DEPTO join EMP

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 31

DEPTO# NOMDEPTO PRESUPUESTO EMP# NOMEMP SALARIO

D1 Comercialización 10000000 E1 López 40000

D1 Comercialización 10000000 E2 Cheng 42000

D2 Desarrollo 12000000 E3 Pérez 30000

D3 Investigación 5000000 E4 Hernández 35000

Propiedades

Al decir que la salida de cada operación es otra tabla, se habla desde el punto de vista conceptual.

Si los resultados intermedios se materializan se le denomina evaluación materializada.

Si los resultados materializados son cedidos, se le llama evaluación canalizada.

Al hecho de que a partir de una tabla siempre se obtiene otra se le conoce como propiedad de cerradura.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 32

Formalización

Es un lenguaje de consulta procedimental.Consta de operaciones que toman una o dos relaciones y producen como resultado una nueva relación.Se tienen operaciones:

Fundamentales. Adicionales.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 33

Operaciones Fundamentales

MC Beatriz Beltrán Martínez

Benemérita Universidad Autónoma de Puebla

Operación de selección

Selecciona tuplas que satisfacen un predicado dado.

En general se permiten las comparaciones que utilizan: =, ≠, o en el predicado de selección.

Además se pueden combinar varios predicados en una mayor utilizando conectivas y (^) y o ().

El predicado puede incluir comparaciones con dos atributos.

Cualquier evaluación con nulo da falso.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 35

Operación de proyección

Es una operación unaria que devuelve su relación de argumento, excluyendo algunos argumentos.

Dado que las relaciones son conjuntos, se eliminan todas las filas repetidas.

Se mencionan los atributos que se desea que aparezcan en la relación resultante.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 36

Operación de unión

Operación binaria, que toma dos relaciones del mismo tipo y toma las tuplas que aparecen en una o bien en la otra relación.

Dado que las relaciones son conjuntos se eliminan las tuplas repetidas.

Se debe asegurar que las uniones se realicen entre relaciones compatibles. Misma aridad. Dominio i-ésimo iguales en ambas

relaciones.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 37

Operación de diferencia

Operación binaria, que toma dos relaciones del mismo tipo y toma las tuplas que aparecen en la primera relación que no aparecen en la segunda relación.

Al igual que en la unión se debe considerar que las relaciones sean compatibles.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 38

Operación producto cartesiano Permite combinar información de

cualesquiera dos relaciones. Es equivalente al producto cartesiano

definido en matemáticas. Se pide que los nombres de las

relaciones no sean iguales. Se crea una tupla a partir de cada par

de tuplas posibles.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 39

Operación de renombramiento

Devuelve una relación con nombre.

Esta operación permite también cambiar el nombre de los atributos.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 40

Operaciones Adicionales

MC Beatriz Beltrán Martínez

Benemérita Universidad Autónoma de Puebla

Operación reunión natural

Es una operación binaria, que permite combinar ciertas selecciones y un producto cartesiano en una sola operación.

Forma un producto cartesiano de sus dos argumentos, realiza una selección forzando la igualdad de los atributos que aparecen en ambos esquemas de relación y finalmente, elimina los atributos repetidos.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 42

Operación intersección

Operación binaria, que toma dos relaciones del mismo tipo y toma las tuplas que aparecen en la primera relación pero que también aparecen en la segunda relación.

Al igual que en la unión se debe considerar que las relaciones sean compatibles.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 43

Operación división

Resulta adecuada para las consultas que incluyen la expresión “para todo”.

Sean dos relaciones, SR, la división es el esquema de R – S. Una tupla esta en la división si y sólo si cumple: t esta en la unión de R – S sobre R. Para cada tupla ts de s hay una tupla

tr de r que cumple con las condiciones:i. tr[S] = ts[S]ii. tr[R – S] =t

Tarea: Cuando y para que se utiliza

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 44

Operación asignación

Actúa similar a la asignación de los lenguajes de programación convencionales.

La evaluación de la asignación no hace que se muestre ninguna relación al usuario.

La variable a la que se asignó puede utilizarse después en otras operaciones relacionales.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 45

EjemplosMC Beatriz Beltrán Martínez

Benemérita Universidad Autónoma de Puebla

Tabla

Prestatario.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 47

Nombre_cliente No_prestamo

Fernández P16

Gómez P93

Gómez P15

López P14

Pérez P17

Santos P11

Arellano P29

Martínez P17

Tabla

Prestamo.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 48

Nombre_Suc No_prestamo Importe

Mirador P11 900

Centro P14 1500

Fuertes P15 1500

Fuertes P16 1300

Centro P17 1000

Ánimas P23 2000

Dorada P93 500

Tabla

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 49

Nombre_cliente No_cuenta

Abril C102

Gómez C101

González C201

González C217

López C222

Ramírez C215

Santos C305

Impositor.

Ejemplos

Selección Nombre_Suc=‘Fuertes’(Prestamo) Nombre_Suc=‘Fuertes’^ Importe>1400(Prestamo)

Proyección No_prestamo, Importe(Prestamo)

Unión Nombre_cliente (Prestatario)

Nombre_cliente(Impositor)

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 50

Ejemplos

Diferencia Nombre_cliente (Impositor)

Nombre_cliente(Prestatario) Producto Cartesiano

r = Prestatario PrestamoSe quiere averiguar los nombres de todos los clientes que tienen un préstamo en los Fuertes.

Nombre_cliente (Prestatario.No_prestamo =

Prestamo.No_prestamo (Nombre_Suc=‘Fuertes’

(Prestatario Prestamo)))MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 51

Ejemplos

Renombramiento x(E) Renombra la expresión E

como x. x(A1 A2 ... An)(E) Renombra

atributos

Reunión Nombre_cliente, No_prestamo, Importe(Prestatario

[] Prestamo)

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 52

Ejemplos

Intersección Nombre_cliente (Prestatario)

Nombre_cliente(Impositor)

División Tarea: Plantear un problema que

se resuelva usando la operación división.

MC Beatriz Beltrán MartínezFCC - BUAP Otoño 2014 53

top related