Modelo Entidad-Relación y Relacional - PC Solución
Modelo Entidad-Relación y Relacional - PC Solución
Modelo Entidad-Relación y Relacional - PC Solución
Relacional
T
anto el Modelo E-R como el Modelo Relacional son los tipos de Modelado de Datos.
El modelo de datos describe una manera de diseñar la base de datos a nivel físico, lógico y de vista.
La principal diferencia entre el Modelo E-R y el Modelo Relacional es que el Modelo E-R es específico para cada entidad, y
el Modelo Relacional es específico para cada tabla.
Tabla Comparativa
Diferencias Principales
■ La diferencia básica entre el Modelo E-R y el Modelo Relacional es que el modelo E-R trata específicamente con las entidades y sus
relaciones. Por otro lado, el Modelo Relacional se ocupa de las Tablas y de la relación entre los datos de esas tablas.
■ Un Modelo E-R describe los datos con conjuntos de entidades, conjuntos de relaciones y atributos. Sin embargo, el modelo relacional
describe los datos con las tuplas, atributos y dominio del atributo.
■ Uno puede entender más fácilmente la relación entre los datos en el Modelo E-R en comparación con el Modelo Relacional.
■ El Modelo E-R tiene la Cardinalidad del Mapeo como una restricción mientras que el Modelo Relacional no tiene tal restricción.
Entidad Relación
El modelo E-R y el modelo relacional
El modelo entidad-relación es un modelo conceptual que sirve para cualquier tipo de SGBD, en
cambio, el modelo relacional es un modelo lógico que sólo sirve para SGBD relacionales (y no para
jerárquicos, o Codasyl, por ejemplo). Todos los diseñadores y administradores de bases de datos
relacionales usan esquemas conceptuales entidad-relación porque se adaptan muy bien a este
modelo. Hay que tener en cuenta la diferencia de la palabra relación en ambos modelos. En el
modelo relacional una relación es una tabla mientras que en el entidad/relación es la asociación que
se produce entre dos entidades.
RELACIÓN (TABLA)
Según el modelo relacional el elemento fundamental es lo que se conoce como relación, aunque
más habitualmente se le llama tabla. Se trata de una estructura formada por filas y columnas que
almacena los datos referentes a una determinada entidad o relación del mundo real. Acerca de una
tabla, además de su nombre, podemos distinguir lo siguiente:
• Atributo Representa una propiedad que posee esa tabla. Equivale al atributo del modelo E-R. Se
corresponde con la idea de campo o columna.
• Tupla Cada una de las filas de la tabla. Se corresponde con la idea de registro. Representa por
tanto cada elemento individual (ejemplar, ocurrencia) de esa tabla.
• Dominio Un dominio contiene todos los posibles valores que puede tomar un determinado
atributo. Dos atributos distintos pueden tener el mismo dominio. Un domino en realidad es un
conjunto finito de valores del mismo tipo. Los dominios poseen un nombre para poder referirnos a
él y así poder ser reutilizable en más de un atributo.
• Clave candidata Conjunto de atributos que identifican unívocamente cada tupla de la relación. Es
decir columnas cuyos valores no se repiten para esa tabla.
• Clave primaria Clave candidata que se escoge como identificador de las tuplas. Se elige como
primaria la candidata que identifique mejor a cada tupla en el contexto de la base de datos. Por
ejemplo una campo con el DNI sería clave candidata de una tabla de clientes, aunque si en esa
relación existe un campo de código de cliente, este sería mejor candidato para clave principal,
porque es mejor identificador para ese contexto.
• Clave externa, ajena o foránea Atributo cuyos valores coinciden con una clave candidata
(normalmente primaria) de otra tabla
RESTRICCIÓN
Una restricción es una condición de obligado cumplimiento por los datos de la base de datos. Las
hay de varios tipos.
• Aquellas que son definidas por el hecho de que la base de datos sea relacional:
• Cada atributo sólo puede tomar un valor en el dominio en el que está inscrito
• Clave primaria (primary key) Hace que los atributos marcados como clave primaria no puedan
repetir valores. Además obliga a que esos atributos no puedan estar vacíos. Si la clave primaria la
forman varios atributos, ninguno de ellos podrá estar vacío.
• Unicidad (unique) Impide que los valores de los atributos marcados de esa forma, puedan
repetirse. Esta restricción debe indicarse en todas las claves alternativas.
• Obligatoriedad (not null) Prohíbe que el atributo marcado de esta forma no tenga ningún valor (es
decir impide que pueda contener el valor nulo, null).
• Integridad referencial (foreign key) Sirve para indicar una clave externa. Cuando una clave se
marca con integridad referencial, no se podrán introducir valores que no estén incluidos en los
campos relacionados con esa clave. Esto último causa problemas en las operaciones de borrado y
modificación de registros, ya que si se ejecutan esas operaciones sobre la tabla principal quedarán
filas en la tabla secundaria con la clave externa sin integridad.
• RESTRICT: esta opción impide eliminar o modificar filas en la tabla referenciada si existen filas con
el mismo valor de clave foránea.
• CASCADE: borrar o modificar una clave en una fila en la tabla referenciada con un valor
determinado de clave, implica borrar las filas con el mismo valor de clave foránea o modificar los
valores de esas claves foráneas.
• SET NULL: borrar o modificar una clave en una fila en la tabla referenciada con un valor
determinado de clave, implica asignar el valor NULL a las claves foráneas con el mismo valor.
• NO ACTION: las claves foráneas no se modifican, ni se eliminan filas en la tabla que las contiene.
• SET DEFAULT: borrar o modificar una clave en una fila en la tabla referenciada con un valor
determinado implica asignar el valor por defecto a las claves foráneas con el mismo valor. ESQUEMA
RELACIONAL Una relación, en el esquema relacional, se define de la siguiente forma: ( , , ...) donde
el atributo clave principal aparece subrayado y donde también se señala, de alguna forma, cuáles
son claves foráneas (por ejemplo, con un *). Por ejemplo, el esquema conceptual del ejercicio
estaciones meteorológicas se expresa con los siguientes esquemas relacionales: Estacion
(Identificador, Latitutd, Longitud, Altitud ) Muestra (IdentificadorEstacion*, Fecha,
TemperaturaMinima, TemperaturaMaxima, Precipitaciones, HumedadMinima, HumedadMáxima,
VelocidadVientoMinima, VelocidadVientoMaxima)