Sunteți pe pagina 1din 38

Bases de Datos

Captulo 9
Objetivos

Comprender conceptos bsicos de las Bases


de Datos
Entender la importancia de las Bases de
Datos en la sociedad de la informacin y del
conocimiento
Comprender y aplicar conceptos
fundamentales de modelado de BD
1. Definiciones
Dato:
Atributo
o caracterstica de una entidad que
puede ser procesado
Base de Datos
Una coleccin coherente de datos
relacionados
Minimundo (Dominio del Problema)
Partedel mundo real acerca de la cual se
almacenan datos en la BD
1. Definiciones
Sistema Gestor de Base de Datos
(SGBD) (DBMS)
Software que facilita la creacin,
administracin y mantenimiento de BD
MySQL, PostgreSQL, SQL Server, Oracle,
etc.
2. Bases de Datos
Coleccin de datos relacionados
Propiedades:
Representa ciertos aspectos del mundo real
(minimundo o dominio)
Es una coleccin coherente de datos
Se disea, construye y puebla con datos para
un propsito especfico
3. Sistema Gestor de Bases de
Datos (SGBD)
Es una categora de software que debe:
Permitir a los usuarios crear BD
Ofrecer a los usuarios la capacidad de consultar
y actualizar los datos en forma eficiente
Soportar el almacenamiento de cantidades
voluminosas de datos, protegindolos
Controlar el acceso concurrente a los datos por
muchos usuarios
Permitir la administracin de las BD
4. Anatoma de una Base de Datos

Una base de datos es la


coleccin de 1 ms tablas
Una tabla es la coleccin de
informacin relacionada
(registros)
4. Anatoma de una Base de Datos
Un registro es la informacin relacionada a
una persona, producto, evento, etc.
Un campo es una parte discreta de
informacin en un registro
Curso Alumno
Base de Datos
ESQUEMA
Profesor
Alumno

NOMBRE DIRECCIN EDAD


Tabla Juan Snchez Calle xxx 123 22
Ana Gamero Jiron yyy G-20 25

NOMBRE DIRECCIN EDAD


Registro
Juan Snchez Calle xxx 123 22
Campo Juan Snchez (campo NOMBRE)

Byte 01001010 Letra J

Bit 01
Modelado y Diseo de
Bases de Datos
1. Fases de Diseo de BD
2. Conceptos bsicos del modelo
conceptual
Entidad ( entity )
Atributo ( attribute )
Tipo de Entidad ( entity set )
Dominio ( values set )
Relacin ( relationship )
Tipo de Relacin
Conceptos bsicos
TIPO DE ENTIDAD (entity set)
Define un conjunto de entidades que poseen
los mismos atributos
PELICULA: titulo, genero, nacionalidad, aoestreno,numcopias
EMPLEADO: dni, nss, nombre, fechanacim, direccion, telefono,
altura, nacionalidad, edad
Notacin

EMPLEADO PELICULA DIRECTOR

LOCAL ACTOR
CLIENTE
VIDEOCLUB
Conceptos bsicos
Instancia de un tipo de entidad
PELICULA
Tambin...
titulo = El seor de los anillos
Ocurrencia genero = Fantasa
Realizacin p2 nacionalidad = EEUU
Ejemplar aoestreno = 2001
...
Entidad concreta
o individual
titulo = Amores perros titulo = Amelie
genero = Drama genero = Comedia
p3 p4 nacionalidad = Francia
nacionalidad = Mjico
aoestreno = 1999 aoestreno = 2001
... ...
Conceptos bsicos
Tipos de atributos
Simples o Compuestos
Almacenados o Derivados
Monovalorados o Multivalorados
Opcionales
Conceptos bsicos
Atributos Simples o Compuestos

Atributos simples
No divisibles. Atmicos genero

Atributos compuestos
Pueden dividirse en otros con significado
propio
fechanacim direccion
dia mes ao calle ciudad provincia codpostal
Conceptos bsicos
Atributos Almacenados o Derivados
Atributos almacenados
fechanacim [de cada EMPLEADO]
nacionalidad [de una PELICULA]
Atributos derivados
Valor calculado a partir de otra informacin ya
existente (atributos, entidades relacionadas)
Son informacin redundante...
edad [de EMPLEADO], clculo a partir de fechanacim
atributo derivado del valor de otro atributo
numcopias [de una PELICULA], cuenta del nmero de
entidades COPIA relacionadas con cada pelcula concreta
atributo derivado de entidades relacionadas
Conceptos bsicos
Atributos Monovalorados o Multivalorados
Atributos monovalorados (monovaluados)
slo un valor para cada entidad
fechanacim [de un EMPLEADO particular]
aoestreno [de cada PELICULA concreta]

Atributos multivalorados (multivaluados)


ms de un valor para la misma entidad
nacionalidad [ PELICULA coproducida por varios pases ]
telefono [ EMPLEADO con varios telfonos de contacto]
pueden tener lmites superior e inferior
del nmero de valores por entidad
nacionalidad (1-2)
telefono (0-3)
Conceptos bsicos
Notacin para atributos
[EN2002] [MPM1999]
ciudad provincia
calle
codpostal calle ciudad provincia
fechanacim codpostal
direccin direccin
fechanacim telefono
(0,3) nombre (0,3) telefono
(0,1) EMPLEADO
EMPLEADO altura altura
nombre
(1,2) (1,2)
D
nss nss nacionalidad
nacionalidad
dni edad dni edad
Conceptos bsicos
Atributos Clave
Atributo con valor distinto para cada instancia
de un tipo de entidad
dni en EMPLEADO
Una clave identifica de forma nica cada entidad
concreta atributo identificador
Notacin EMPLEADO EMPLEADO

dni dni

[EN2002] [MPM1999]
Conceptos bsicos
Atributos Clave (ii)
Una clave puede estar formada por
varios atributos clave compuesta
Combinacin de valores distinta para cada instancia
(nombre, fechanacim) en el tipo de entidad EMPLEADO
Una clave compuesta debe ser mnima

Un tipo de entidad puede tener


ms de una clave claves candidatas
Claves o Identificadores Candidatos de EMPLEADO:
dni
nss
(nombre, fechanacim)
Conceptos bsicos
DOMINIO (values set)
Conjunto de valores
Cada atributo simple est asociado a un
dominio, que especifica sus valores vlidos
Atributo Descripcin Dominio
nombre cadenas de hasta 30 caracteres alfabticos
telefono cadenas de hasta 9 caracteres numricos
altura nmeros reales entre 0 y 25 (metros)
... ...

No suele representarse
Conceptos bsicos
RELACIN (relationship)
Tambin interrelacin
Asociacin, vnculo o correspondencia
entre instancias de entidades relacionadas de
alguna manera en el mundo real
el director Alejandro Amenbar ha rodado la pelcula Mar
adentro
el empleado 87654321 trabaja en el local de videoclub
principal
la pelcula El imperio contraataca es una continuacin de
la pelcula La guerra de las galaxias
Conceptos bsicos
TIPO DE RELACIN (relationship set)

Estructura genrica o abstraccin del conjunto


de relaciones existentes entre dos o ms
tipos de entidad
un DIRECTOR ha rodado PELICULAs

Notacin

DIRECTOR HA_RODADO PELICULA


Conceptos bsicos
Grado de un tipo de relacin
Nmero de tipos de entidad que participan
en el tipo de relacin
Binaria: grado 2 (el ms frecuente)
Ternaria: grado 3
Reflexiva (o recursiva): grado 1

ACTOR ACTUA_EN PELICULA

CLIENTE ALQUILA PELICULA

CONTINUACION PELICULA
DE LOCAL_VIDEOCLUB
Conceptos bsicos
Restricciones estructurales sobre tipos de
relacin
Limitan las posibles combinaciones de
entidades que pueden participar en las
relaciones
Extradas de la situacin real que se modela
Una pelcula debe haber sido dirigida por uno y slo un
director
Un director ha dirigido al menos una pelcula y puede haber
dirigido muchas
Clases de restricciones estructurales:
Razn de cardinalidad (o tipo de correspondencia)
Razn de participacin
Conceptos bsicos
Razn de Cardinalidad Notacin EN2002
Nmero mximo de instancias de tipo de
relacin en las que puede participar una
misma instancia de tipo de entidad
la cardinalidad de HA_RODADO es 1 a N

DIRECTOR
Notacin
1
etiqueta en la lnea que
une entidad y relacin HA_RODADO

Ojo: da la sensacin de
N
que se representa al revs PELICULA
Conceptos bsicos
Razn de Cardinalidad Notacin EN2002

Razones de cardinalidad ms comunes:


1:1 (uno a uno)
1:N (uno a muchos)
M:N (muchos a muchos)

EMPLEADO ACTOR
1 1 M

TRABAJA_EN SUPERVISA ACTUA_EN

N N
1
LOCAL_VIDEOCLUB PELICULA
DISEO LGICO
1. DISEO LGICO..a grandes
rasgos Transformacin
Conceptual Lgico de Datos

El objetivo del diseo lgico es convertir los


esquemas conceptuales en un esquema lgico que
se ajuste al modelo de SGBD sobre el que se vaya a
implementar el sistema.
Ya que aqu se trata el diseo de bases de datos
relacionales, en esta etapa se obtiene un conjunto
de relaciones (tablas) que representen los datos de
inters.
2. Modelado Lgico
Objetivo: desaparicin de las relaciones

Tipos de entidad Tablas


Atributos Campos
Identificador principal Clave primaria
Identificador alternativo Clave alterna
Relaciones nuevas tablas o propagacin
de claves
3. Representacin
PERSONA(dni, nombre, fechaNac)

PERSONA

dni nombre fechaNac

PERSONA
dni
Nombre
fechaNac
4. Atributos compuestos
A) Eliminar atributo compuesto y
considerar todos sus componentes
como atributos simples
dni nombre
dni fechaNa
nombre
calle
fechaNa PERSONA
calle ciudad
PERSONA direccin ciudad provincia
provincia
dni
nombre

B) Eliminar los componentes fechaNa


y considerar el atributo direccin
compuesto como un nico PERSONA
atributo
5. Atributos multivaluados de entidades
Atributo Multivaluado de E
Tabla R sin atributo multivaluado y nueva Tabla S, en la que el
atributo multivaluado se representa como un atributo simple A
S contendr, un atributo F que es clave ajena a la clave
primaria de R
Clave Primaria de S = (F,A)
dni
dni
nombre
nombre
fechaNac
fechaNac
PERSONA
PERSONA direccin (1,n)
dni direccin
PERSONA(dni, nombre, fechaNac)
FK

DIRECCION_PERSONA(dni, DIRECCION
PERSONA
direccin)
6. Relaciones 1:1
1 1
E1 R E2

T1 T2
Se crea una tabla para cada entidad
Propagacin de claves en una u otra direccin (indiferente)
Atributos simples de R o componentes simples de atributos
compuestos, tambin se incluyen como atributos en Tabla
donde se propago la clave

codEmp numDep

EMPLEADO DIRIGE DEPARTAMENTO


1 1

nomEmp fechaInic nomDep

EMPLEADO(codEmp, nomEmp, ...)

DEPARTAMENTO(numDep, nomDep, codDirector, fechaInic...)


7. Relaciones 1:N
1 N
E1 R E2
Se crea una tabla para cada entidad
T1 T2
Propagacin de clave
En T2 se incluyen nuevos atributos para contener valores:
Clave primaria de T1
Clave ajena en T2
Atributos simples (o componentes simples de atributos
compuestos) de R

codProv
codDistrito
1 N
PROVINCIA TIENE DISTRITO

nomProv

PROVINCIA(codProv, nomProv, ...) DISTRITO(codDistrito, codProv,


...)
Clave Fornea
8. Relaciones N:N
N M
E1 R E2

T1 T2
Se crea una tabla para cada entidad
Se crea una nueva tabla que tenga como clave primaria la
combinacin de las claves primarias de las otras tablas
Atributos simples (o componentes simples de atributos
compuestos) de R
derechosAutor
codAutor
isbn
AUTOR ESCRIBE LIBRO
titulo
N N
nomAutor fechaFin

AUTOR(codAutor, nomAutor, ...)

ESCRIBE(codAutor, isbn, fechaFin, derechosAutor)

LIBRO(isbn, titulo, ...)


EJERCICIO: Realizar el Modelo E-R y Modelo Relacional
Se desea simular el comportamiento de una universidad cualquiera,
atendiendo a la siguiente especificacin.
Cada alumno se matricula en una serie de asignaturas en las que
obtendr una calificacin. En una asignatura se pueden matricular
muchos alumnos.
Cada asignatura es impartida por un nico profesor y un profesor puede
dar clase de muchas asignaturas. Cada profesor pertenece a un
departamento.
De los alumnos almacenaremos el dni, nombre, primer apellido, segundo
apellido, calle, ciudad, provincia, telfono, fecha de nacimiento y estado
civil. El estado civil de un alumno puede ser el siguiente: S:Soltero
C:Casado V:Viudo P:Separado D:Divorciado.
De las asignaturas se guarda el cdigo, nombre completo, nmero de
crditos y un campo de observaciones.
De cada profesor tenemos informacin del dni, titulacin que posee,
nombre y primer apellido.
De los departamentos se tiene como datos su cdigo y nombre.
Un alumno puede matricularse en la misma asignatura varias veces

S-ar putea să vă placă și