Está en la página 1de 42

Fases del Diseño de las

Bases de Datos
• Diseño Conceptual
• Diseño Lógico
• Diseño Físico

Arquitectura de la Base de Datos


UNIDAD III
Diseño Conceptual
Modelo Entidad Relación - MER

Atributo1 Atributo1
Atributo2 Atributo2
Atributo3 Atributo3

ENTIDAD RELACIÓN ENTIDAD


Conceptos

Entidad: Representa un objeto/elemento del Universo de discurso (Del problema a resolver).

ENTIDAD
Conceptos

Entidad Débil: Representa un objeto/elemento del Universo de discurso (Del problema a


resolver) pero que necesita de una relación con otra entidad para su identificación.
Entidad Fuerte: Es una entidad que no es débil.

ENTIDAD
Conceptos

Relación: Representa el tipo de relación entre entidades.

Relación
Conceptos

Relación con dependencia de identificación: Representa el tipo de relación que identifica


la dependencia entre entidades.

Relación
Conceptos

ROL: Es la representación de la unión entre las relaciones y las entidades. (Conector).


Conceptos

Atributos: Representan las características de las entidades.

Nombre_atributo Nombre_atributo
Tipos de Atributos

Atributo simple Atributo Identificador Atributo Identificador Atributo Atributo Atributo


y monovaluado Principal Alternativo multivaluado Opcional Compuesto
Restricciones
Tipo de Correspondencia de cardinalidades

Número máximo de ejemplares de una entidad asociados a una combinación de


ejemplares de las otras entidades en la interrelación, que puede ser 1 o N.

1:N

Persona Posee Vehículo


Restricciones
Cardinalidades Máximas y Mínimas
Son el número máximo y mínimo de ejemplares de una entidad que puede
relacionarse con un único ejemplar de la otra entidad que participa en la
interrelación. Se representan como (0,1), (1,1), (0,N), (1,N) y se situan en la línea
que conecta la entidad con el rombo que representa el tipo de interrelación.

1:N
(0,1) (0,N)
Persona Posee Vehículo
Conceptos

Ejemplo de Relación.

Nombre Edad Estatura Placa Modelo Color

1:N

Persona Posee Vehículo


Conceptos
Relación Recursiva

Nombre Edad Estatura

Persona compañer@
Ejemplo:

Se requiere un sistema de información que permita gestionar la información de los


Arriendos/Alquileres de las viviendas.

Este sistema debe contener la información del propietario de la(s) vivienda(s) y la información
que se debe contemplar para dicho propietario es: identificación, nombre completo, teléfonos
de contacto y opcionalmente el correo electrónico. La(s) vivienda(s) deben tener la
información de: código de la vivienda, dirección, la cual está compuesta por: calle y número,
la vivienda debe tener además una descripción y la cantidad de habitantes. Cada vivienda se
encuentra ubicada en una ciudad y dicha ciudad pertenece a un departamento/estado. Se
debe tener la información de los arriendos/alquileres los cuales tendrán la información de:
fecha de inicio, fecha de fin, valor mensual. Y también se requiere conocer la información del
(los) inquilino(s), la información de este debe ser: identificación, nombre completo y
teléfonos.
nombres apellidos
Identifi.
nombre

PROPIETARIO

telefonos email
nombres apellidos calle número
código
Identifi.
nombre dirección

PROPIETARIO VIVIENDA

telefonos email cant_habitantes descripción


nombres apellidos calle número
código código nombre
Identifi.
nombre dirección

PROPIETARIO VIVIENDA CIUDAD

telefonos email cant_habitantes descripción


nombres apellidos calle número
código código nombre
Identifi.
nombre dirección

PROPIETARIO VIVIENDA CIUDAD

telefonos email cant_habitantes descripción

DEPARTAMENTO

código nombre
nombres apellidos calle número
código código nombre
Identifi.
nombre dirección

PROPIETARIO VIVIENDA CIUDAD

telefonos email cant_habitantes descripción

DEPARTAMENTO

ARRIENDO
código nombre

código f_inicio f_fin valor_mensual


nombres apellidos calle número
código código nombre
Identifi.
nombre dirección

PROPIETARIO VIVIENDA CIUDAD

telefonos email cant_habitantes descripción

nombres apellidos

Identifi. DEPARTAMENTO
nombre

INQUILINO ARRIENDO
código nombre

telefonos código f_inicio f_fin valor_mensual


nombres apellidos calle número
código código nombre
Identifi.
nombre dirección
1:N
(1:1) (1:N)
PROPIETARIO Posee VIVIENDA CIUDAD

telefonos email cant_habitantes descripción

nombres apellidos

Identifi. DEPARTAMENTO
nombre

INQUILINO ARRIENDO
código nombre

telefonos código f_inicio f_fin valor_mensual


nombres apellidos calle número
código código nombre
Identifi.
nombre dirección
1:N N:1
(1:1) (1:N) (0:N) (1:1)
PROPIETARIO Posee VIVIENDA Ubicada CIUDAD

telefonos email cant_habitantes descripción

nombres apellidos

Identifi. DEPARTAMENTO
nombre

INQUILINO ARRIENDO
código nombre

telefonos código f_inicio f_fin valor_mensual


nombres apellidos calle número
código código nombre
Identifi.
nombre dirección
1:N N:1
(1:1) (1:N) (0:N) (1:1)
PROPIETARIO Posee VIVIENDA Ubicada CIUDAD

(1:N)

telefonos email cant_habitantes descripción


N:1 Pertenece

nombres apellidos (1:1)

Identifi. DEPARTAMENTO
nombre

INQUILINO ARRIENDO
código nombre

telefonos código f_inicio f_fin valor_mensual


nombres apellidos calle número
código código nombre
Identifi.
nombre dirección
1:N N:1
(1:1) (1:N) (0:N) (1:1)
PROPIETARIO Posee VIVIENDA Ubicada CIUDAD

(1:1) (1:N)

telefonos email cant_habitantes descripción


N:1 Pertenece

nombres apellidos (1:1)


1:N Participa
Identifi. DEPARTAMENTO
nombre
(0:N)

INQUILINO ARRIENDO
código nombre

telefonos código f_inicio f_fin valor_mensual


nombres apellidos calle número
código código nombre
Identifi.
nombre dirección
1:N N:1
(1:1) (1:N) (0:N) (1:1)
PROPIETARIO Posee VIVIENDA Ubicada CIUDAD

(1:1) (1:N)

telefonos email cant_habitantes descripción


N:1 Pertenece

nombres apellidos (1:1)


1:N Participa
Identifi. DEPARTAMENTO
nombre
N:M (0:N)

(1:N) Realizad (1:N)


INQUILINO ARRIENDO
o código nombre

telefonos código f_inicio f_fin valor_mensual


Diseño Lógico
Modelo Relacional - MR

R(atributo1, atributo2, atributo3, …, atributoN)


Traducción del MER al MR:

ENTIDADES, ATRIBUTOS SIMPLES Y MONOVALUADOS RELACIONES Y ATRIBUTOS

Nombre Edad Estatura

PERSONA(Nombre, Edad, Estatura)

Persona dominio(Nombre) : carácter de tamaño n


dominio(Edad): entero de 0 hasta 150
dominio(Estatura): decimal de 0 hasta 2.90
Traducción del MER al MR:

ENTIDADES, ATRIBUTOS OPCIONALES RELACIONES Y ATRIBUTOS

Nombre Edad Email

PERSONA(Nombre, Edad, Email*)

Persona
Traducción del MER al MR:
ENTIDADES, ATRIBUTOS COMPUESTOS
RELACIONES Y ATRIBUTOS
Nombres Apellidos

Nombre Edad

PERSONA(Nombre_Nombres, Nombre_Apellidos, Edad)

Persona dominio(Nombre_Nombres) : carácter de tamaño n


dominio(Nombre_Apellidos) : carácter de tamaño n
dominio(Edad): entero de 0 hasta 150
Traducción del MER al MR:
ENTIDADES, ATRIBUTOS MULTIVALUADOS
RELACIONES Y ATRIBUTOS

Nombre Edad Teléfonos

PERSONA(Nombre, Edad)

Persona TELEFONOS(Telefono)
Traducción del MER al MR:
ENTIDADES, ATRIBUTOS MULTIVALUADOS
CLAVES PRIMARIAS Y CLAVES FORANEAS RELACIONES Y ATRIBUTOS

Nombre Edad Teléfonos

PERSONA(Nombre, Edad)

Persona TELEFONOS(Nombre, Telefono)


O
PERSONA

TELEFONOS(Nombre, Telefono)
Traducción del MER al MR:
RELACIONES
CARDINALIDAD 1:1 1:1

Tiene
PERSONA CARNET
un

PERSONA(Nombre, edad, dirección, Codigo)

CARNET(Codigo, Nombre, cargo, tiposangre)


Traducción del MER al MR:
RELACIONES
CARDINALIDAD 1:N 1:N

PERSONA Posee VEHÍCULO

PERSONA(Nombre, edad, dirección)

VEHÍCULO(Nombre, modelo, color)


Traducción del MER al MR:
RELACIONES
CARDINALIDAD N:M N:M

Matricul
ALUMNO a
MATERIA

ALUMNO(identificacion, nombre, edad)

MATRICULA(identificacion, codigo)

MATERIA(codigo, nombre, salon, horario)


nombres apellidos calle número
código código nombre
Identifi.
nombre dirección
1:N N:1
(1:1) (1:N) (0:N) (1:1)
PROPIETARIO Posee VIVIENDA Ubicada CIUDAD

(1:1) (1:N)

telefonos email cant_habitantes descripción


N:1 Pertenece

nombres apellidos (1:1)


1:N Participa
Identifi. DEPARTAMENTO
nombre
N:M (0:N)

(1:N) Realizad (1:N)


INQUILINO ARRIENDO
o código nombre

telefonos código f_inicio f_fin valor_mensual


Modelo Relacional
PROPIETARIO(identificacion, nom_nombres, nom_apellidos, email*)

TELEFONOS(identificación, telefono)

VIVIENDA(código, dir_calle, dir_numero, cant_habitantes, descripción, identificación, codigo_ciudad)

CIUDADES(codigo_ciudad, nombre, departamento)

DEPARTAMENTO(codigo_departamento, nombre)

ARRIENDO(codigo, f_inicio, f_fin, valor_mensual, codigo_vivienda)

ARRIENDO_INQUILINO(codigo, identificacion)

INQUILINO(identificacion, nom_nombres, nom_apellidos)

TELEFONOS_INQUILINOS(identificación, telefono)
Modelo Relacional
PROPIETARIO(identificacion, nom_nombres, nom_apellidos, email*)

TELEFONOS(identificación, telefono)

VIVIENDA(código, dir_calle, dir_numero, cant_habitantes, descripción, identificación, codigo_ciudad)

CIUDADES(codigo_ciudad, nombre, departamento)

DEPARTAMENTO(codigo_departamento, nombre)

ARRIENDO(codigo, f_inicio, f_fin, valor_mensual, codigo_vivienda)

ARRIENDO_INQUILINO(codigo, identificacion)

INQUILINO(identificacion, nom_nombres, nom_apellidos)

TELEFONOS_INQUILINOS(identificación, telefono)
Representación Tabular

R{
(atributo1, atributo2, atributo3, …, atributoN),
(atributo1, atributo2, atributo3, …, atributoN),
(atributo1, atributo2, atributo3, …, atributoN),

(atributo1, atributo2, atributo3, …, atributoN)
}
Restricciones:
• Restricción Nulo: No permite que el valor del atributo sea nulo.
• Restricción de Identidad: No permite tener dos valores repetidos en las
claves primarias.
• Restricción de Integridad de Entidad: No permite tener valores nulos en
la clave primaria.
• Restricción de Integridad Referencial: No permite tener valores en la
clave foránea que no existan en la clave primaria. Sin embargo, si
permite tener valores nulos en la clave foránea.
• Restricción de Clave Alterna: No permite valores repetidos en la clave
alterna.
• Restricción de Dominio: Los datos deben ser del dominio específico.
Ejemplo: dominio de los números enteros comprendidos entre 0 y 18.
Operaciones Transaccionales

• INSERCIÓN
• ELIMINACIÓN
• ACTUALIZACIÓN
Transacciones Compuestas

• BEGIN
• COMMIT
• ROLLBACK
Violaciones de Restricciones
OPERACIÓN IDENTIDAD ENTIDAD REFERENCIAL UNICA DOMINIO NULO
INSERTAR SI SI SI SI SI SI
Sin Sin Alternativa NULO Alternativa Sin Alternativa
Alternativas Alternativas NULO Alternativas VALOR X
DEFECTO
ELIMINAR NO NO SI (Si es de la tabla NO NO NO
padre que contiene
información en las
tablas hijo)
Alternativa
NULIFICAR, CASCADA,
RESTRINGIR

ACTUALIZAR SI SI SI (Padre a Hijo) SI SI SI


Sin Sin Alternativas iguales a Alternativa Sin Sin
Alternativas Alternativas Eliminar. NULO Alternativas Alternativas

También podría gustarte