0% encontró este documento útil (0 votos)
48 vistas39 páginas

Chapter 3

Este documento presenta el modelo relacional para bases de datos. Explica conceptos clave como dominios, esquemas de relaciones, instancias de relaciones y tuplas. También introduce la noción de llave primaria como un conjunto de atributos que identifican de forma única cada tupla en una relación.

Cargado por

Rosario Olivares
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
48 vistas39 páginas

Chapter 3

Este documento presenta el modelo relacional para bases de datos. Explica conceptos clave como dominios, esquemas de relaciones, instancias de relaciones y tuplas. También introduce la noción de llave primaria como un conjunto de atributos que identifican de forma única cada tupla en una relación.

Cargado por

Rosario Olivares
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Modelo

Relacional

Julio J. Águila
G.

Prólogo Diseño e Implementación de Bases de Datos


Modelo
relacional Relacionales-Capı́tulo 3
Bases de datos
relacionales

Paso de
modelo E-R a Recopilador: Julio J. Águila G.1
modelo
relacional Autores: César Guerrero Saldivia2 , Mauricio Marı́n3
Ejercicios
propuestos
1 Universidad de Magallanes
2 Universidad de Chile
3 Universidad de Santiago de Chile

29 de agosto de 2019

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 1 / 39


Modelo
Relacional

Julio J. Águila
G.

Prólogo
1 Prólogo
Modelo
relacional
2 Modelo relacional
Bases de datos
relacionales

Paso de
modelo E-R a 3 Bases de datos relacionales
modelo
relacional

Ejercicios 4 Paso de modelo E-R a modelo relacional


propuestos

5 Ejercicios propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 2 / 39


Prólogo

Modelo
Relacional

Julio J. Águila
G.

Prólogo
1 Prólogo
Modelo
relacional
2 Modelo relacional
Bases de datos
relacionales

Paso de
modelo E-R a 3 Bases de datos relacionales
modelo
relacional

Ejercicios 4 Paso de modelo E-R a modelo relacional


propuestos

5 Ejercicios propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 3 / 39


Prólogo

Modelo
Relacional Modelo entidad-relación para una empresa genérica
Julio J. Águila
G.

Prólogo

Modelo
relacional

Bases de datos
relacionales

Paso de
modelo E-R a
modelo
relacional

Ejercicios
propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 4 / 39


Prólogo

Modelo
Relacional

Julio J. Águila
G.

Prólogo Modelo Relacional


Modelo
relacional
El modelo relacional considera la base de datos como una
Bases de datos colección de relaciones. En términos prácticos una relación
relacionales
representa una tabla en que cada fila tiene columnas con
Paso de
modelo E-R a valores que describen una entidad del mundo real. El modelo
modelo
relacional en sı́ fue propuesto por primera vez en 1970 por Edgar Frank
Ejercicios Codd en el paper A Relational Model of Data for Large Shared
propuestos
Data Banks. Como se verá en este capı́tulo, existe una gran
coherencia entre el modelo entidad-relación y el modelo
relacional.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 5 / 39


Prólogo

Modelo
Relacional Ejemplo de una tabla
Julio J. Águila
G. DNOMBRE DNUMERO RUTGERENTE GERFECHAINIC
Of. Central 1 88866555 19-6-71
Prólogo
Administración 4 98765432 1-1-85
Modelo Investigación 5 33344555 22-5-78
relacional

Bases de datos
relacionales

Paso de
modelo E-R a
modelo
relacional

Ejercicios
propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 6 / 39


Modelo relacional

Modelo
Relacional

Julio J. Águila
G.

Prólogo
1 Prólogo
Modelo
relacional
2 Modelo relacional
Bases de datos
relacionales

Paso de
modelo E-R a 3 Bases de datos relacionales
modelo
relacional

Ejercicios 4 Paso de modelo E-R a modelo relacional


propuestos

5 Ejercicios propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 7 / 39


Modelo relacional

Modelo
Relacional

Julio J. Águila
G.

Prólogo
Dominios
Modelo
relacional Definición Un dominio D es un conjunto de valores
Bases de datos atómicos. En la práctica los dominios son tipos
relacionales
de datos, e.g.:
Paso de
modelo E-R a
modelo números departamentos: int(2).
relacional
nombres departamentos: char(15).
Ejercicios
propuestos ruts: int(8).
fechas: char(10), formato
“####-##-##”.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 8 / 39


Modelo relacional

Modelo
Relacional Esquema de una relación
Julio J. Águila
G.
Un esquema de relación R denotado por
R(A1 : D1 , A2 : D2 , . . . , An : Dn ) está constituido por un
Prólogo
nombre de relación R y una lista de atributos A1 , A2 , . . . , An
Modelo
relacional con dominios D1 , D2 , . . . , Dn respectivamante. Cada Di es el
Bases de datos dominio de Ai y se denota dom( Ai )= Di . El grado de una
relacionales

Paso de
relación es el número n de atributos del esquema de la relación,
modelo E-R a e.g.:
modelo
relacional
DEPARTAMENTO( DNUMERO: números
Ejercicios
propuestos departamentos, DNOMBRE: nombres departamentos,
RUTGERENTE: ruts, GERFECHAINIC: fechas)
DEPARTAMENTO tiene grado n = 4.
dom( DNUMERO)= números departamentos.
dom( DNOMBRE)= nombres departamentos.
dom( RUTGERENTE)= ruts.
dom( GERFECHAINIC)= fechas.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 9 / 39


Modelo relacional

Modelo
Relacional Instancia de una relación
Julio J. Águila
G.
Definición Una instancia de relación r del esquema de
relación R(A1 : D1 , A2 : D2 , . . . , An : Dn ),
Prólogo
denotado como r (R), es un conjunto de m tuplas
Modelo
relacional r (R) = {t1 , t2 , . . . , tm }. Cada tupla ti es una lista
Bases de datos ordenada de n valores, i.e.
relacionales
ti =< vi1 , vi2 , . . . , vin >, donde cada valor
Paso de
modelo E-R a vij , 1 ≤ j ≤ n, es un elemento de dom(Aj ) o es un
modelo
relacional valor nulo. La cardinalidad de una relación es el
Ejercicios número m de tuplas de la instancia.
propuestos

Ejemplo:
r (DEPARTAMENTO) = { t1 =< “Of. Central”, 1,
88866555, “1971-06-19”>, t2 =< “Administración”, 4,
98765432, “1985-01-01”>, t3 =< “Investigación”, 5,
33344555, “1978-05-22”>}.
r (DEPARTAMENTO) tiene cardinalidad m = 3.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 10 / 39


Modelo relacional

Modelo
Relacional

Julio J. Águila
G.

Prólogo Tupla
Modelo
relacional Una instancia r (R) es un subconjunto del producto cartesiano
Bases de datos de los dominios que definen R:
relacionales

Paso de
modelo E-R a r (R) ⊆ (dom(A1 ) × dom(A2 ) × . . . × dom(An )
modelo
relacional
El número máximo de m tuplas que puede tener r (R) está
Ejercicios
propuestos dado por:

|dom(A1 )| ∗ |dom(A2 )| ∗ . . . ∗ |dom(An )|

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 11 / 39


Modelo relacional

Modelo
Relacional
Restricción de llave primaria
Julio J. Águila
G.
Una relación R se define como un conjunto de m tuplas. Por
Prólogo definición todos los elementos de un conjunto son distintos,
Modelo luego todas las tuplas de una relación deben ser distintas. Esto
relacional
implica que dos tuplas no pueden tener la misma combinación
Bases de datos
relacionales de valores para todos sus atributos.
Paso de
modelo E-R a
Sea S un subconjunto de atributos de R con la propiedad de
modelo que no hay dos tuplas en r (R) tal que tengan la misma
relacional

Ejercicios
combinación de valores para esos atributos. Entonces para cada
propuestos dos tuplas distintas tp y tq tenemos la siguiente restricción de
llave primaria:

tp [S] 6= tq [S]
Por ejemplo:
t1 [DNUMERO] 6= t2 [DNUMERO] 6= t3 [DNUMERO].

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 12 / 39


Modelo relacional

Modelo
Relacional

Julio J. Águila
G.

Prólogo
Llave primaria
Modelo
relacional En general, un esquema de relación puede tener más de una
Bases de datos llave, y en ese caso, cada una de las llaves es una llave
relacionales

Paso de
candidata. Una de las llaves candidatas se designa como llave
modelo E-R a
modelo
primaria de la relación:
relacional
DEPARTAMENTO( DNUMERO: números departamentos,
Ejercicios
propuestos DNOMBRE: nombres departamentos, RUTGERENTE:
ruts, GERFECHAINIC: fechas) PRIMARY KEY
(DNUMERO).

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 13 / 39


Modelo relacional

Modelo
Relacional

Julio J. Águila
G.
Relaciones para una empresa genérica
Prólogo
EMPLEADO( RUT, NPILA, APPAT, APMAT, FNAC,
Modelo
relacional DIRECCION, SEXO, SUELDO, RUTSUPERV, NDEPTO).
Bases de datos
relacionales
DEPARTAMENTO( DNUMERO, DNOMBRE,
Paso de
RUTGERENTE, GERFECHAINIC).
modelo E-R a
modelo UBICACIONES DEPTO( DNUMERO, DUBICACION).
relacional

Ejercicios
PROYECTO (PNOMBRE, PNUMERO, PUBICACION,
propuestos DNUM).
TRABAJA EN (ERUT, PNO, HORAS).
CARGA (ERUT, NOMBRE CARGA, SEXO, FNAC,
PARENTESCO).

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 14 / 39


Modelo relacional

Modelo
Relacional

Julio J. Águila
G.

Prólogo
Llaves primarias y llaves externas
Modelo
relacional El concepto más relevante de este modelo es el término
Bases de datos
relacionales
relacional. En términos prácticos esto significa que de alguna
Paso de
manera las relaciones están asociadas. Esta asociación se logra
modelo E-R a
modelo
a través de las llaves externas que pertenecen a los esquemas
relacional de las relaciones. No todos los esquemas de relación tienen
Ejercicios
propuestos
llaves externas; cuando esto ocurre, significa que la llave
externa de la relación está haciendo referencia a la llave
primaria de otra relación.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 15 / 39


Modelo relacional

Modelo
Relacional

Julio J. Águila
G.
Restricción de llave externa o llave foránea
Prólogo

Modelo
Definición Un subconjunto de atributos F del esquema de
relacional relación R1 es una llave externa de R1 si satisface
Bases de datos
relacionales
las siguientes reglas:
Paso de 1 Los atributos en F tienen el mismo dominio
modelo E-R a
modelo que los atributos de la llave primaria P en
relacional

Ejercicios
otro esquema de relación R2 . En este caso se
propuestos dice que los atributos F de R1 hacen
referencia a los atributos P en R2 .
2 Un valor de F en una tupla ti de R1 es nulo o
tiene un valor de P en alguna tupla tj de R2 .

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 16 / 39


Modelo relacional

Modelo
Relacional Ejemplo de llaves externas
Julio J. Águila
NPILA APPAT APMAT RUT FNAC DIRECCION SEXO SUELDO RUTSUPERV NDEPTO
G.
Juan Pérez Garcı́a 12345678 9-1-55 Toesca 965 M 120 33344555 5
Alicia Zelaya Roa 99988777 19-7- Blanco 2120 F 105 98765432 4
Prólogo 58
Juana Besa Martı́nez 98765432 20-6- Mapocho F 240 88866555 4
Modelo 31 2540
relacional Francisco Cea Daza 33344555 8-12- Condell 221 M 310 88866555 5
45
Bases de datos Jaime Ramos Salas 88866555 10-11- Vitacura M 360 nulo 1
relacionales 30 1015

Paso de
modelo E-R a
modelo
relacional

Ejercicios
propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 17 / 39


Modelo relacional

Modelo
Relacional

Julio J. Águila
G. Ejemplo de llaves externas
Prólogo RUTSUPERV de EMPLEADO referencia a RUT de
Modelo EMPLEADO, además NDEPTO de EMPLEADO referencia a
relacional
DNUMERO de DEPARTAMENTO. Esto se define de la
Bases de datos
relacionales siguiente forma:
Paso de
modelo E-R a EMPLEADO( RUT: ruts, NPILA: nombres, APPAT:
modelo
relacional apellidos, APMAT: apellidos, FNAC: fechas, DIRECCION:
Ejercicios direcciones, SEXO: sexos, SUELDO: remuneraciones,
propuestos
RUTSUPERV: ruts, NDEPTO: números departamentos)
PRIMARY KEY ( RUT), FOREIGN KEY ( RUTSUPERV)
REFERENCES [Link], FOREIGN KEY
(NDEPTO) REFERENCES
[Link].

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 18 / 39


Modelo relacional

Modelo
Relacional

Julio J. Águila
G.

Prólogo

Modelo
relacional
Instancias dinámicas versus esquemas estáticos
Bases de datos
relacionales
Una instancia de relación contiene solo las tuplas válidas que
Paso de
modelo E-R a representan un estado en un tiempo particular, lo cual puede
modelo
relacional ser dinámico a través del tiempo. En cambio, el esquema de
Ejercicios una relación es relativamente estático ( o invariante).
propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 19 / 39


Bases de datos relacionales

Modelo
Relacional

Julio J. Águila
G.

Prólogo
1 Prólogo
Modelo
relacional
2 Modelo relacional
Bases de datos
relacionales

Paso de
modelo E-R a 3 Bases de datos relacionales
modelo
relacional

Ejercicios 4 Paso de modelo E-R a modelo relacional


propuestos

5 Ejercicios propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 20 / 39


Bases de datos relacionales

Modelo
Relacional

Julio J. Águila
G.
DBMS relacional
Prólogo

Modelo Un sistema que permita implementar los esquemas de relaciones


relacional
visto en la sección anterior junto con las reglas de integridad
Bases de datos
relacionales para las claves primarias y las claves externas se denomina
Paso de DBMS relacional ( relational Databases Management System).
modelo E-R a
modelo Al conjunto de esquemas de relación S = (R1 , R2 , . . . , Rk ) y al
relacional
conjunto I de restricciones de integridad implementadas por el
Ejercicios
propuestos DBMS se le denomina base de datos relacional.
En términos prácticos, la implementación se realiza a través del
DDL (Data Definition Language), que para nuestro caso es
SQL (Structure Query Language) y nuestro DBMS es MySQL.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 21 / 39


Bases de datos relacionales

Modelo
Relacional MySQL Language
Julio J. Águila CREATE TABLE IF NOT EXISTS ‘Empresa‘.‘DEPARTAMENTO‘
G.
(
Prólogo
‘DNOMBRE‘ VARCHAR(20) NULL COMMENT ’’,
Modelo
relacional ‘DNUMERO‘ DECIMAL NOT NULL COMMENT ’’,
Bases de datos ‘GERFECHAINI‘ VARCHAR(45) NULL COMMENT ’’,
relacionales
‘RUTGERENTE‘ VARCHAR(8) NULL COMMENT ’’,
Paso de
modelo E-R a PRIMARY KEY (‘DNUMERO‘) COMMENT ’’,
modelo
relacional INDEX ‘fk_DEPARTAMENTO_EMPLEADO1_idx‘
Ejercicios (‘RUTGERENTE‘ ASC) COMMENT ’’,
propuestos
CONSTRAINT ‘fk_DEPARTAMENTO_EMPLEADO1‘
FOREIGN KEY (‘RUTGERENTE‘)
REFERENCES ‘Empresa‘.‘EMPLEADO‘ (‘RUT‘)
ON DELETE NO ACTION
ON UPDATE NO ACTION
)
ENGINE = InnoDB;
Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 22 / 39
Bases de datos relacionales

Modelo
Relacional
Tablas de una base de datos relacional
Julio J. Águila
G. En términos del DBMS la base datos está compuesta por tablas
Prólogo
que se pueden representar gráficamente como matrices donde
Modelo la primera fila contiene los nombres de los atributos y las filas
relacional
siguientes contienen a las entidades presentes en la tabla. Cada
Bases de datos
relacionales fila es un conjunto de valores asociados con el dominio
Paso de respectivo señalado por el nombre de la columna
modelo E-R a
modelo correspondiente, e.g.:
relacional

Ejercicios
propuestos Tabla EMPLEADO
NPILA APPAT APMAT RUT FNAC DIRECCION SEXO SUELDO RUTSUPERV NDEPTO
Juan Pérez Garcı́a 12345678 9-1-55 Toesca 965 M 120 33344555 5
Alicia Zelaya Roa 99988777 19-7- Blanco 2120 F 105 98765432 4
58
Juana Besa Martı́nez 98765432 20-6- Mapocho F 240 88866555 4
31 2540
Francisco Cea Daza 33344555 8-12- Condell 221 M 310 88866555 5
45
Jaime Ramos Salas 88866555 10-11- Vitacura M 360 nulo 1
30 1015

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 23 / 39


Bases de datos relacionales

Modelo
Relacional

Julio J. Águila Tablas DEPARTAMENTO, UBICACIONES DEPTO y PROYECTO


G.

DNOMBRE DNUMERO RUTGERENTE GERFECHAINIC


Prólogo
Of. Central 1 88866555 19-6-71
Modelo Administración 4 98765432 1-1-85
relacional
Investigación 5 33344555 22-5-78
Bases de datos
relacionales
DNUMERO DUBICACION
Paso de
modelo E-R a 1 Providencia
modelo 4 Ñuñoa
relacional
5 La Florida
Ejercicios
propuestos
5 Pirque

PNOMBRE PNUMERO PUBICACION DNUM


Producto X 1 La Florida 5
Producto Y 2 Pirque 5
Computarización 10 Ñuñoa 4
Reorganización 20 Providencia 1

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 24 / 39


Bases de datos relacionales

Modelo
Relacional

Julio J. Águila
G.
Tablas TRABAJA EN y CARGA
Prólogo
ERUT PNO HORAS
Modelo
relacional 12345678 1 32.5
12345678 2 7.5
Bases de datos 33344555 2 10.0
relacionales
99988777 10 10.0
Paso de 98765432 10 10.0
modelo E-R a 98765432 20 15.0
modelo 88866555 20 nulo
relacional

Ejercicios ERUT NOMBRE CARGA SEXO FNAC PARENTESCO


propuestos
33344555 Alicia F 5-4-86 Hija
33344555 Teodoro M 25-10-83 Hijo
33344555 Ximena F 3-5-54 Cónyuge
98765432 Rodolfo M 28-2-32 Cónyuge
12345678 Alicia F 5-5-57 Cónyuge

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 25 / 39


Bases de datos relacionales

Modelo
Relacional Restricciones de integridad
Julio J. Águila La restricción de llave primaria se especifica en cada tabla y se
G.
usa para evitar que dos filas tengan el mismo conjunto de
Prólogo valores para la llave definida, e.g. RUT es diferente para cada
Modelo fila de la tabla EMPLEADO.
relacional
La restricción de integridad referencial se especifica entre dos
Bases de datos
relacionales tablas y se usa para mantener la consistencia entre filas de las
Paso de
dos tablas. Informalmente, una fila en una tabla que hace
modelo E-R a
modelo
referencia a otra tabla debe referirse a una fila existente en esa
relacional tabla o puede ser un valor nulo, e.g. RUTSUPERV de
Ejercicios EMPLEADO debe coincidir con el RUT de alguna fila de la
propuestos
tabla EMPLEADO o ser un valor nulo. Al mismo tiempo
NDEPTO debe coincidir con algún valor de la tabla
DEPARTAMENTO o ser nulo.
NOTA: se puede observar que el nombre DNUMERO se usa en
DEPARTAMENTO y UBICACIONES DEPTO. Pero el mismo
atributo se llama NDEPTO en EMPLEADO y DNUM en
PROYECTO. No hay problema que el mismo atributo tenga
nombres distintos en distintas tablas.
Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 26 / 39
Bases de datos relacionales

Modelo
Relacional

Julio J. Águila
G.

Prólogo

Modelo
relacional Restricciones semánticas
Bases de datos
relacionales Las restricciones anteriores no consideran las restricciones
Paso de semánticas que existen en el “mundo real”. Por ejemplo, “el
modelo E-R a
modelo sueldo de un empleado no puede exceder el de su supervisor”,
relacional
“el número máximo de horas que puede trabajar un empleado
Ejercicios
propuestos en todos los proyectos es 45”.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 27 / 39


Paso de modelo E-R a modelo relacional

Modelo
Relacional

Julio J. Águila
G.

Prólogo
1 Prólogo
Modelo
relacional
2 Modelo relacional
Bases de datos
relacionales

Paso de
modelo E-R a 3 Bases de datos relacionales
modelo
relacional

Ejercicios 4 Paso de modelo E-R a modelo relacional


propuestos

5 Ejercicios propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 28 / 39


Paso de modelo E-R a modelo relacional

Modelo
Relacional

Julio J. Águila
G.

Prólogo

Modelo
relacional
¿Cómo se puede obtener la definición de la base de datos?
Bases de datos A saber, se podrı́a obtener de forma analı́tica en función de la
relacionales
experiencia del diseñador. Otra alternativa es utilizar una
Paso de
modelo E-R a metodologı́a matemática como la que se explicará en otro
modelo
relacional capı́tulo. Finalmente, una combinación de ambas alternativas
Ejercicios sugiere obtener la definición de la base de datos a partir de un
propuestos
diagrama E-R, aplicando un método de transformación.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 29 / 39


Paso de modelo E-R a modelo relacional

Modelo
Relacional Modelo E-R para una empresa genérica
Julio J. Águila
G.

Prólogo

Modelo
relacional

Bases de datos
relacionales

Paso de
modelo E-R a
modelo
relacional

Ejercicios
propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 30 / 39


Paso de modelo E-R a modelo relacional

Modelo
Relacional Método de transformación
Julio J. Águila 1 Para cada atributo multivaluado, crear una relación
G.
agregando la llave primaria de la entidad a la cual
Prólogo pertenece.
Modelo 2 Convertir todas las entidades del diagrama en relaciones
relacional

Bases de datos
indicando sus atributos y dominios, estos últimos como
relacionales tipos de datos convencionales ( int, double, char, date).
Paso de 3 Para cada relación del diagrama:
modelo E-R a
modelo Si es de cardinalidad M:N, crear una relación con las llaves
relacional
primarias de las entidades que están asociadas, y los
Ejercicios
propuestos atributos propios de la relación —si los tuviera—.
Si es de cardinalidad N:1, se debe agregar la llave primaria
y los atributos propios en la relación que representa a la
entidad marcada con N.
Si es de cardinalidad 1:1, se debe agregar la llave primaria
y los atributos propios en la relación que tenga un grado de
opcionalidad completa. Si ninguna tiene grado de
opcionalidad completa, es indistinto donde se agregue la
llave de una o de otra —pero no en ambas—.
Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 31 / 39
Paso de modelo E-R a modelo relacional

Modelo
Relacional

Julio J. Águila
G.
Método de transformación
Prólogo
1 ...
Modelo
relacional 2 ...
Bases de datos
relacionales 3 ...
Paso de
modelo E-R a
4 Para cada nueva relación, indicar cuál es su llave primaria
modelo
relacional
mediante la notación PRIMARY KEY
Ejercicios (lista de atributos).
propuestos
5 Para cada relación, creada o modificada, agregar cuáles
son llaves externas mediante la notación FOREIGN KEY
(lista de atributos) REFERENCES
nombre [Link] atributo.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 32 / 39


Paso de modelo E-R a modelo relacional

Modelo
Relacional

Julio J. Águila
Resultado simplificado
G.
El lector podrá comprobar que aplicando la metodologı́a se
Prólogo obtienen los esquemas de relaciones equivalentes a los que se
Modelo muestran a continuación:
relacional

Bases de datos EMPLEADO( RUT, NPILA, APPAT, APMAT, FNAC,


relacionales
DIRECCION, SEXO, SUELDO, RUTSUPERV, NDEPTO).
Paso de
modelo E-R a
modelo
DEPARTAMENTO( DNUMERO, DNOMBRE,
relacional RUTGERENTE, GERFECHAINIC).
Ejercicios
propuestos UBICACIONES DEPTO( DNUMERO, DUBICACION).
PROYECTO (PNOMBRE, PNUMERO, PUBICACION,
DNUM).
TRABAJA EN (ERUT, PNO, HORAS).
CARGA (ERUT, NOMBRE CARGA, SEXO, FNAC,
PARENTESCO).

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 33 / 39


Paso de modelo E-R a modelo relacional

Modelo
Relacional

Julio J. Águila
G.

Prólogo

Modelo
relacional
Nombres de los atributos
Bases de datos Nótese que los nombres han cambiado en relación al diagrama
relacionales
de la Figura. Además, los nombres de los atributos no siguen
Paso de
modelo E-R a las convenciones dadas en el capı́tulo anterior. No es necesario
modelo
relacional detenerse en esto, el ejemplo ha sido transcrito literalmente
Ejercicios desde la fuente y se explicará a su debido tiempo las ventajas o
propuestos
desventajas de realizar esto.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 34 / 39


Ejercicios propuestos

Modelo
Relacional

Julio J. Águila
G.

Prólogo
1 Prólogo
Modelo
relacional
2 Modelo relacional
Bases de datos
relacionales

Paso de
modelo E-R a 3 Bases de datos relacionales
modelo
relacional

Ejercicios 4 Paso de modelo E-R a modelo relacional


propuestos

5 Ejercicios propuestos

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 35 / 39


Ejercicios propuestos

Modelo
Relacional Notación
Julio J. Águila Dado los esquemas de relación de la base de datos para una
G.
empresa genérica, responda las preguntas y definiciones que se
Prólogo piden a continuación:
Modelo
relacional
1 Para la relación EMPLEADO, describa los dominios de los
Bases de datos siguientes atributos: NPILA, DIRECCIÓN, SEXO y
relacionales
SUELDO.
Paso de
modelo E-R a
2 ¿Cuál es el grado de cada una de las relaciones?
modelo 3 ¿Cuál es el número de tuplas de cada una de las
relacional
relaciones?
Ejercicios
propuestos 4 Para la tabla EMPLEADO, ¿cuál es el valor o significado
de las siguientes notaciones?:
1 r = {t|t = t2 ∨ t = t5 }.
2 t3 = {v8 = 360, v10 = 1}.
3 dom(A10 ).
4 dom(A7 ) × dom(A7 ).
5 |dom(A8 )| ∗ |dom(A8 )|.
6 t2 [A4 , A1 , A2 , A3 ].
7 t[A1 , A2 ].

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 36 / 39


Ejercicios propuestos

Modelo
Relacional

Julio J. Águila
G.

Prólogo
Método de transformación
Modelo
relacional Utilizando el método de transformación, propuesto en este
Bases de datos
relacionales
capı́tulo, obtenga el modelo relacional de los problemas
Paso de presentados en el Capı́tulo 2:
modelo E-R a
modelo Compañı́a de capacitación.
relacional

Ejercicios Vendedores con experiencia.


propuestos
Compañı́a de videos.
Los Arcoch.

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 37 / 39


Ejercicios propuestos

Modelo
Relacional Método analı́tico
Julio J. Águila Los organizadores de la Copa América 2019 han encargado a su
G.
empresa hacer una primera aproximación de una base de datos
Prólogo usando el modelo relacional. Para ello a usted se le ha
Modelo entregado la siguiente información que debe representar en la
relacional
base de datos:
Bases de datos
relacionales El año y paı́s donde se han realizado las copas anteriores,
Paso de
modelo E-R a
además de las sedes donde se jugaron los partidos.
modelo Los paı́ses participantes y los jugadores de cada selección,
relacional
indicando nombre, fecha de nacimiento, equipo en que
Ejercicios
propuestos juega, y posición dentro del equipo. Es importante saber
que un mismo jugador puede estar en varias copas y jugar
en posiciones diferentes (en una misma copa juega en una
misma posición) pero siempre por el mismo paı́s.
Los partidos efectuados, indicando entre que paı́ses y el
marcador. Si hubo definición a penales, éstos se toman
como goles del encuentro. Considere la etapa en que se
jugó el partido (octavos de final, cuartos de final, etc).
Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 38 / 39
Ejercicios propuestos

Modelo
Relacional

Julio J. Águila
G.

Prólogo Diseño e Implementación de Bases de Datos


Modelo
relacional Relacionales-Capı́tulo 3
Bases de datos
relacionales

Paso de
modelo E-R a Recopilador: Julio J. Águila G.1
modelo
relacional Autores: César Guerrero Saldivia2 , Mauricio Marı́n3
Ejercicios
propuestos
1 Universidadde Magallanes
2 Universidad
de Chile
3 Universidad de Santiago de Chile

29 de agosto de 2019

Julio J. Águila G. (UMAG) Modelo Relacional 29 de agosto de 2019 39 / 39

También podría gustarte