Modelo Relacional
UNEXCA
Base de datos I
Profesor Alfio Filippo Saglimbeni M.
Introducción
• El modelo relacional (MR) de base de datos (BDD) es
un enfoque para organizar y gestionar datos mediante
tablas que contienen filas (tuplas) y columnas
(atributos).
Introducción
• Cada tabla representa una relación entre datos, donde
las filas son registros individuales y las columnas
describen características de esos registros.
Introducción
• Este modelo, propuesto por Edgar F. Codd en 1970,
permite establecer relaciones entre diferentes tablas a
través de claves primarias y externas, facilitando el
acceso y la manipulación de la información de manera
estructurada y eficiente
Esquema de la BDD
• El MR es la representación lógica de la estructura de
la base de datos, que define cómo se organizan los
datos.
• Incluye el nombre de las tablas (relaciones), los
atributos (columnas) de cada tabla, sus tipos de datos
y las relaciones entre las tablas
Esquema de la base de datos
• El esquema establece restricciones lógicas, como:
• Claves primarias.
• Claves foráneas
• Que permiten asegurar la integridad de los datos.
Esquema de la base de datos
• En resumen, el esquema actúa como un mapa que
guía el almacenamiento y la manipulación de los
datos en una base de datos relacional.
Esquema
• El término se refiere al nombre asignado a una relación, así
como al conjunto de atributos que la componen, incluyendo el
campo clave.
¿Cómo elijo el campo clave?
• Será aquel campo con un valor único para la tupla o
registro.
• De no poder encontrar un valor único se podrá
agregar como un dato numérico.
Ejemplos de esquema
• Libro (id_libro, Título, Autor, Año_publicación,
Género)
• Usuario (id_usuario, Nombre, Correo_electrónico,
Teléfono)
• Préstamo (id_préstamo, is_libro, id_usuario,
Fecha_préstamo, Fecha_devolución)
Los diagramas de esquema
• Son representaciones gráficas que ilustran la
estructura lógica de una base de datos.
• Estos diagramas muestran las tablas (o relaciones)
junto con sus atributos y las relaciones entre ellas,
incluyendo claves primarias y foráneas.
Los diagramas de esquema
• A diferencia de los Diagramas Entidas Relación (DER)
que no muestran de forma explicita los atributos de
clave foránea los diagramas de esquema si lo hacen.
• Muchos SMBD poseen herramientas para el diseño
con una herramienta de interfaz gráfica.
Representación gráfica
De 1 a 1
Esquema
De 1 a 1 PK Campo1
FK Campo 2
Campo 3
Campo 4
De 1 a 1
Resumen
• Consiste en un conjunto de tablas que representan
datos.
• Su objetivo es el de permitir crear un esquema.
• El DER es el modelado conceptual.
• El Diagrama Relacional (DR) es el modelado lógico o
esquema
• La BDD (archivo) es el modelado físico.
Conceptos básicos.
Campo / Atributo
Película Año Duración Tipo
Guerra de las Galaxias Episodio IV 1977 121 minutos Space Opera
Indiana Jones y la última cruzada 1989 127 minutos Acción
Blade Runner 1982 117 Ciencia Ficción
Tupla / Renglón / Fila
A1 A2 A3
Los modelos
R R
E1 E2 E3
1 2
A1 A2 A3 A1 A2 A3
Base de datos
en disco
Restricciones
• Inherentes
• Semánticas
Restricciones Inherentes
• Unicidad de Tuplas.
• Orden Irrelevante.
• Dominio de Atributos.
• Restricción de Nulos
Unicidad de Tuplas
• No se permiten tuplas duplicadas en una relación.
Cada fila debe ser única, lo que implica que no puede
haber dos registros idénticos en todos sus atributos.
• Esto es una característica fundamental de los
conjuntos en matemáticas, de los cuales se deriva el
concepto de relación.
Orden Irrelevante
• El orden de las tuplas (filas) y de los atributos
(columnas) no tiene relevancia en el modelo
relacional.
• Esto significa que los datos pueden ser presentados
en cualquier orden sin afectar su significado
Dominio de Atributos
• Cada atributo en una tupla debe contener un único
valor que pertenezca a un dominio definido.
• Esto asegura que los datos sean consistentes y del
tipo esperado (por ejemplo, numérico, texto, fecha)
Restricción de Nulos
• Ningún atributo que forme parte de la clave primaria
puede tener un valor nulo.
• Esto se conoce como la regla de integridad de
entidad, que garantiza que cada registro pueda ser
identificado de manera única.
Restricciones Semánticas
• Estas restricciones son definidas por el usuario y se
utilizan para reflejar mejor las reglas del mundo real
en el esquema de la base de datos.
• Son esenciales para garantizar que las bases de datos
relacionales funcionen correctamente y mantengan la
calidad y consistencia de los datos a lo largo del
tiempo.
Restricciones Semánticas
• Clave Primaria (PRIMARY KEY):
• Define uno o más atributos que identifican de manera única cada
tupla en una relación. Los valores en estos atributos no pueden
repetirse ni ser nulos.
Restricciones Semánticas
• Unicidad (UNIQUE):
• Permite especificar que un conjunto de atributos debe tener
valores únicos, similar a la clave primaria, pero no
necesariamente identifican cada fila7
Restricciones Semánticas
• Obligatoriedad (NOT NULL):
• Esta restricción asegura que ciertos atributos deben tener un
valor definido y no pueden ser nulos, lo que es crucial para
mantener la integridad de los datos.
Restricciones Semánticas
• Integridad Referencial (FOREIGN KEY):
• Establece relaciones entre diferentes tablas asegurando que los
valores en una tabla correspondan a valores existentes en otra
tabla, lo cual es esencial para mantener la coherencia entre los
datos relacionados.
Restricciones Semánticas
• Validación (CHECK):
• Permite imponer condiciones sobre los valores que pueden ser
aceptados en un atributo, asegurando así que se cumplan ciertos
criterios específicos.
Restricciones Semánticas
• Triggers:
• Son procedimientos automáticos que se ejecutan en respuesta a
ciertos eventos en la base de datos, como inserciones o
actualizaciones, permitiendo implementar lógica adicional y
mantener la integridad semántica.
Conversión DER a modelo
relacional
• La conversión de un diagrama entidad-relación (DER)
a un modelo relacional es un proceso fundamental en
el diseño de bases de datos.
• Este proceso implica transformar las entidades,
relaciones y atributos del modelo conceptual en
tablas y columnas que puedan ser manejadas por un
sistema de gestión de bases de datos.
Conversión de Entidades a
Relaciones
• Transformación de Entidades.
• Identificación de Claves Primarias.
• Entidades Débiles.
Transformación de Entidades
• Cada entidad del diagrama se convierte en una tabla.
Los atributos de la entidad se transforman en
columnas dentro de esta tabla.
• Por ejemplo, una entidad "Cliente" con atributos como
"ID", "Nombre" y "Teléfono" se convierte en una tabla
llamada "Clientes" con las columnas
correspondientes.
Identificación de Claves Primarias
• La clave primaria de cada entidad se define como la
columna que identifica de manera única cada fila en
la tabla. En el caso anterior, "ID" podría ser la clave
primaria para la tabla "Clientes".
Entidades Débiles
• Si hay entidades débiles (que dependen de otra
entidad), se crean tablas para ellas que incluyen sus
atributos más una columna adicional que contiene la
clave primaria de la entidad fuerte a la que están
asociadas
Conversión de Relaciones
• Relaciones 1:N (Uno a Muchos)
• Relaciones N:M (Muchos a Muchos)
• Relaciones 1:1 (Uno a Uno).
Conversión de Relaciones
Relaciones 1:N (Uno a Muchos)
• Para convertir una relación 1:N, se agrega la clave
primaria de la entidad del lado "1" como una clave
foránea en la tabla correspondiente a la entidad del
lado "N".
• Por ejemplo, si hay una relación entre "Editorial" (1) y
"Libros" (N), la tabla "Libros" incluirá una columna
para la clave primaria de "Editorial".
Conversión de Relaciones
Relaciones N:M (Muchos a Muchos)
• Estas relaciones requieren la creación de una tabla
intermedia que contenga las claves primarias de
ambas entidades como claves foráneas. Esta nueva
tabla representará la relación y puede incluir también
otros atributos específicos relacionados con esa
asociación.
• Por ejemplo, si hay una relación entre "Estudiantes" y
"Cursos", se creará una tabla llamada "Inscripciones"
con las claves primarias de ambas tablas.
Conversión de Relaciones
Relaciones 1:1 (Uno a Uno)
• En este caso, se puede elegir cualquiera de las
entidades para propagar su clave primaria a la otra
como clave foránea. La elección puede depender del
contexto o del diseño lógico más eficiente.
Generalizaciones y
Especializaciones
• Generalización:
• Se crea una tabla para el supertipo con su clave primaria y
atributos, mientras que los subtipos pueden tener sus propias
tablas que incluyen la clave primaria del supertipo como clave
foránea.
Generalizaciones y
Especializaciones
• Especialización:
• Se puede optar por crear una única tabla con un atributo
discriminador que indique el tipo específico dentro del supertipo,
o bien mantener tablas separadas para cada subtipo.
Generalizaciones y
Especializaciones
• Este proceso sistemático asegura que el modelo
relacional resultante sea coherente y cumpla con las
reglas necesarias para mantener la integridad y
accesibilidad de los datos en un sistema de base de
datos.