Bases de datos Conceptos, diseño y utilización Departament d’Informàtica Universitat de València Universitat de València Índice Introducción Sistemas de información y BDs Diseño de bases.
Download
Report
Transcript Bases de datos Conceptos, diseño y utilización Departament d’Informàtica Universitat de València Universitat de València Índice Introducción Sistemas de información y BDs Diseño de bases.
Bases de datos
Conceptos, diseño y utilización
Departament d’Informàtica
Universitat de València
Universitat de València
Índice
Introducción
Sistemas de información y BDs
Diseño de bases de datos:
Diseño conceptual
Diseño lógico
Utilización de las BD
Consultas a BD
2
Parte I
Introducción al diseño de BBDD
Universitat de València
Introducción
Un sistema de información (SI):
es un conjunto de elementos que funcionan
conjuntamente con el objetivo de recoger,
tratar, manipular y aportar la información
necesaria para el desarrollo de las actividades
de una empresa u organización.
Se dice que un SI está informatizado:
si está soportado por un ordenador. Es el
que nos concierne en este curso.
4
Universitat de València
Introducción
Uno de los elementos principales de un SI es la base
de datos (BD). Las BD son ejemplos típicos de
grandes sistemas de software con tres
características importantes:
Hay una gran cantidad de datos que deben ser
almacenados en memoria externa y que deben
ser organizados de forma que los datos
elementales puedan ser recuperados y
actualizados fácil y eficientemente.
Los datos guardan entre sí interrelaciones. La
información incluye restricciones estáticas y
dinámicas, como los valores permitidos o las
posibles evoluciones.
Los datos deben ser compartidos entre diferentes
usuarios y el sistema debe mantener la integridad
5
de la información.
Universitat de València
Introducción
Una Base de Datos es un conjunto de datos
integrados con información de un sistema objeto, con
redundancia controlada y con una estructura que
trata de reflejar la del sistema objeto y facilitar la
organización, recuperación y elaboración de
información
La BD la forman los datos y su descripción
Un SGBD es un software específico que permite a
los usuarios crear, mantener y manipular la BD
6
Universitat de València
Etapa 2: Diseño de BDs
2.1. Diseño conceptual: esta actividad tiene como
objetivo obtener una representación de la realidad
que capture las propiedades estáticas y dinámicas
de la misma necesarias para satisfacer los requisitos
recogidos en la actividad anterior.
Se combinan los requisitos de los distintos grupos de
usuarios para construir una descripción única de toda
la información en la BD.
Se desarrolla utilizando un modelo semántico y define:
entidades en la BD
relaciones entre ellas
restricciones de integridad de la información.
Utilizaremos el modelo entidad-relación.
7
Universitat de València
Etapa 2: Diseño de BDs
2.2. Diseño lógico: esta actividad tiene como
objetivo la traducción del esquema conceptual en el
modelo empleado por el SGBD dando lugar por una
a un esquema lógico.
Se construyen las tablas.
Relaciones entre tablas.
Reglas de integridad.
Se crean usuarios y se administran los privilegios para
acceder a la información.
8
Parte II
Diseño conceptual de BDs.
Modelo entidad-relación
Universitat de València
Modelo entidad-relación
Es un modelo semántico de datos
El modelo E/R permite representar, utilizando los
diagramas E/R,
las estructuras que constituyen el contenido del SI
y las restricciones que limitan las ocurrencias válidas
de las mismas.
Utiliza tres conceptos:
Entidad
Atributo
Relación
10
Universitat de València
Modelo E/R: Entidad
Definición: se define entidad como aquel objeto
(real o abstracto) acerca del cual queremos
almacenar información en la base de datos.
Denominaremos a la estructura genérica en su
sentido abstracto tipo de entidad, mientras que
entidad será cada una de las ocurrencias o
instancias de este tipo de entidad.
clasificación
Coche
Persona
proceso de abstracción
11
Universitat de València
Modelo E/R: entidad
La representación gráfica de un tipo de entidad es un
rectángulo etiquetado con el nombre del tipo de
entidad:
libro
autor
Tres reglas generales que debe cumplir cualquier
entidad:
Tiene que tener existencia propia
Cada ocurrencia de un tipo debe poder distinguirse de
las demás
Todas las ocurrencias de un tipo de entidad deben
tener los mismos tipos de características (atributos).
12
Universitat de València
Modelo E/R: relaciones
Los objetos de un SI se asocian con otros, siendo
también de interés modelar estas conexiones.
Para ellos se utilizan los tipos de relaciones:
llamaremos tipo de relación a la estructura genérica
del conjunto de relaciones existentes entre dos o más
tipos de entidad.
El tipo de relación se representa mediante un rombo
etiquetado con el nombre de la relación, unido
mediante arcos a los tipos de entidad que asocia.
13
Universitat de València
Modelo E/R: relaciones
Ejemplos de relaciones:
Relación
binaria
Relación
ternaria
libro
escrito
profesor
docencia
Relación
reflexiva
empleado
autor
asignatura
grupo
jefe de
14
Universitat de València
Modelo E/R: relaciones
Una relación se define por su nombre y por su grado.
El nombre es el identificador que se le da a la propia
relación,
y el grado equivale al número de tipos de entidad a los que
asocia o relaciona.
Relación de grado 1 o reflexiva.
Relación de grado 2 o binaria.
Relación de grado 3 o ternaria.
El tipo de correspondencia es el número máximo de ocurrencias
de cada tipo de entidad que pueden intervenir en una
ocurrencia del tipo de relación que se está tratando.
Gráficamente, esto se representa con alguna de estas etiquetas
textuales: 1:1, 1:N, N:M.
15
Universitat de València
Ejemplo relaciones
Ejemplo de tipo de correspondencia:
es_escrito
libro
escribe
escrito
autor
n:m
es_publicado
libro
publica
publicado
editorial
n:1
16
Universitat de València
Modelo E/R: atributos
Los atributos permiten representar:
las propiedades de los objetos (entidades)
las propiedades de las asociaciones entre ellos.
La representación gráfica de un atributo consiste en
una elipse con el nombre del atributo en su interior.
nombre
Entre todos los atributos de un tipo de entidad
debemos elegir uno o varios que identifiquen
unívocamente (clave primaria) cada entidad. Estos
atributos se representarán de la misma forma, pero
con el nombre del atributo subrayado. nombre
17
Universitat de València
Modelo E/R: restricciones
El modelo E/R permite la inclusión de
algunas restricciones que limitan el conjunto
de ocurrencias válidas.
Se pueden definir sobre:
Entidades
Restricción de identificación.
Restricción de unicidad.
Relaciones
Restricción de participación.
18
Universitat de València
Restricciones sobre entidades
Restricción de identificación:
Exige que cada ocurrencia de un tipo entidad
se identifique unívocamente de forma que se
pueda diferenciar del resto de ocurrencias
(clave principal).
empleado
Nemp
19
Universitat de València
Restricciones sobre entidades
Restricción de unicidad:
Indica que las distintas ocurrencias de una
entidad deben tomar valores distintos (o nulos)
para el atributo (o conjunto de atributos) donde se
define esta restricción. (No se pueden repetir)
Representación: subrayando los atributos con una
linea discontinua. En caso de que haya varios
conjuntos de atributos con esta restricción se
añade un subíndice en la línea.
DNI2
empleado
NSS1
20
Universitat de València
Restricciones sobre relaciones
Restricción de participación:
Especifica si la existencia de una entidad depende
de que esté relacionada con otra entidad a través
del tipo de relación.
La restricción de participación total se le conoce
como dependencia de existencia (se puede
representar con una doble línea) e implica la
existencia de integridad referencial
21
Universitat de València
Ejemplo de notación
Ejemplos de notación:
DIRECTOR
1
HA_ RODADO
N
PELICULA
Un director lo es si ha
rodado alguna película
(sin codirecciones)
ACTOR
personaje M
ACTUA_EN
N
film
PELICULA
Un actor lo es si ha actuado en alguna película
Pueden haber películas sin actores
22
Universitat de València
Ejercicios (I)
El dueño de un concesionario de coches
desea tener registrada y poder procesar la
información de los coches disponibles y de
las ventas que se realicen. Desea poder
conocer tanto los datos del cliente, como los
del coche, y todos los datos referentes a la
venta, y poder realizar diferentes consultas y
explotaciones de la información al respecto.
Analizar y representar el SI mediante el
modelo E/R.
23
Universitat de València
Ejercicios (II)
Representar mediante el modelo E/R :
La plantilla de una empresa, con los datos de
sus empleados y de los departamentos a los
que pertenecen, indicando además quién es
el jefe de cada departamento.
Si la empresa trabaja por proyectos, incluir
también la información de los proyectos, quién
dirige y quién trabaja en cada proyecto.
El sistema de reservas de un conjunto de
casas rurales, donde hay propietarios que
poseen casas que se alquilan a clientes.
24
Parte III
Diseño de BDs. Diseño lógico
Universitat de València
Introducción al diseño lógico
El diseño lógico consiste en una transformación de
modelos.
El modelo conceptual se convierte al modelo de la
base de datos para el que se está diseñando, en
nuestro caso modelo relacional
El modelo relacional es una forma de representar
los datos (mediante tablas) que se ocupa de tres
aspectos de los datos: su estructura, su integridad y
su manipulación.
Una base de datos relacional estará compuesta por
una o más tablas (“relaciones”)
26
Universitat de València
El modelo relacional
Una tabla (o relación) guarda una colección
de información conteniendo registros (o filas)
referidos a entidades de un mismo tipo
Un registro (fila o tupla) es un dato
compuesto de otros más simples que
contiene la información de una entidad.
Un campo (o atributo) es el contenedor de
cada uno de los datos más simples que
constituyen un registro.
27
Universitat de València
El modelo relacional
El tipo de información que un campo puede
contener viene determinado por el tipo de tipo
de dato (dominio), que puede ser:
texto (de longitud fija o variable)
numérico (entero, entero largo, con decimales)
fechas, horas
Todos los registros de una misma tabla tienen
la misma estructura de campos
(obviamente con diferentes contenidos)
28
Universitat de València
El modelo relacional
El modelo relacional incluye dos
reglas de integridad, que se aplican a
cualquier BD, basadas en el concepto
de clave:
Clave primaria: regla de integridad de las
entidades.
Clave ajena: regla de integridad
referencial.
29
Universitat de València
El modelo relacional
Clave primaria.
Es un identificador único para la tabla, esto
es, una columna o conjunto de columnas de
forma que nunca existen dos filas en la misma
tabla con el mismo valor en esa columna o
conjunto de columnas.
30
Universitat de València
El modelo relacional
Clave ajena.
Una clave ajena es un atributo (o un
compuesto de atributos) de una relación R1
cuyos valores deben concordar con los de la
clave primaria de alguna fila de la relación R2
(donde R1 y R2 no son necesariamente
distintas).
31
Universitat de València
Principios básicos del diseño lógico
El paso de un esquema en el modelo E/R al
relacional está basado en los tres principios
siguientes:
Todo tipo de entidad se convierte en una
relación.
Todo tipo de relación N:M se transforma en
una relación.
Todo tipo de relación 1:N se traduce en el
fenómeno de propagación de clave, aunque
también se puede crear una nueva relación.
32
Universitat de València
Transformación de entidades
Se crea una relación para cada tipo de entidad presente en el
esquema E/R.
Se incluyen todos los atributos que caracterizan las entidades,
indicando para cada uno el dominio (tipo de datos que puede
contener).
De los atributos compuestos se incluyen sólo sus componentes
finales.
a1
Se indica la clave primaria
a2
Se “marcan” los campos “únicos”
n
A
a31
a3
a0
a32
A(a0:dom_a0, a1:dom_a1, a2:dom_a2, a31:dom_a31, a32:dom_a32)
Clave Primaria: a0
Único: a1
33
Universitat de València
Transformación de relaciones
Relaciones N:M.
Se transforman en una relación que tendrá
como clave primaria la concatenación de los
atributos principales de cada una de las
entidades que relaciona.
Estos atributos deben tener restricción de
clave ajena respecto a cada una de las tablas
donde ese atributo es clave primaria.
Habrá que considerar lo que ocurre en los
casos en los que se borre o modifique la clave
primaria referenciada.
34
Universitat de València
Transformación de las relaciones
Relaciones binarias 1:n, con restricción de
participación (integridad referencial).
Las dos entidades dan lugar a dos relaciones y la
relación R se representa con una clave ajena en la
relación de lado de la n.
a0
a1
A
1:n
b0
R
b1
B
A(a0:dom_a0,a1:dom_a1,…)
Clave Primaria: {a0}
B(b0:dom_b0,b1:dom_b1…..a0:dom_a0)
Clave Primaria:{b0}
Clave ajena:{a0} de B con A
35
Universitat de València
Ejercicios
Realizar el diseño lógico correspondiente a
cada uno de los diseños conceptuales
realizados
Concesionario
Organización de la plantilla y los proyectos
Casas rurales
36
Bases de datos
Utilización de Bases de Datos
Universitat de València
Utilización de SGBD
Una vez diseñado el Sistema de Información,
se emplea un Sistema de Gestión de Bases
de Datos para implementarlo y gestionarlo.
Labor propia de la Ingeniería Informática
La inmensa mayoría de usuarios de una BD
no la usan directamente, sino que acceden,
introducen o modifican datos a través de
aplicaciones que limitan las posibilidades y
ocultan los detalles.
38
Universitat de València
Utilización de SGBD personal
En un SGBD personal podemos crear y
gestionar una BD de manera simplificada.
Un SGBD como Access permite crear tablas
y realizar consultas mediante un interfaz
facilitado.
39
Universitat de València
SGBD personal: Tablas
Diseñador/Administrador
Crear/Modificar el diseño de una tabla
Establecer/Modificar las reglas de integridad
Insertar/Modificar el contenido de una tabla
Usuario de consulta
Ver las tablas existentes
Ver el contenido de las tablas
Ver el diseño de las tablas: campos y tipos
Ver las relaciones entre tablas
40
Universitat de València
SGBD: Consultas
Una consulta de selección muestra registros
completos de una tabla o ciertos campos
especificados de los registros de una tabla que
cumplan determinados criterios, pudiendo indicar una
ordenación de los mismos.
También se pueden mostrar datos calculados a
partir de otros, y dar un nombre al campo calculado
El SW permite almacenar las consultas realizadas
(las “preguntas”, no los resultados)
Existen también consultas de inserción,
actualización y borrado (que exceden este módulo)
41
Universitat de València
SGBD: Consultas
En una consulta de selección se puede “unir” tablas
para mostrar filas con campos de diferentes tablas,
debiendo establecer una relación de coincidencia
entre campos de diferentes tablas
Las “uniones” se pueden establecer también entre
una tabla y una consulta almacenada
Las consultas con agregación permiten agrupar los
datos de determinado campo (o de varios) según
determinadas operaciones
suma, promedio, mínimo, máximo, cuenta, …
Cualquier consulta puede combinar todo lo anterior
criterios, orden, cálculos, uniones, agregaciones 42
Universitat de València
SGBD: Informes
Los resultados de las consultas se pueden mostrar
en pantalla o exportar para su uso en otras
aplicaciones.
El SW también permite generar una gran variedad de
Informes para su presentación “impresa”
el SW proporciona un asistente para informes (de
uso recomendable), que permite diseñar el
formato de presentación del resultado de las
consultas almacenadas
qué campos mostrar y cómo ordenarlos
si se quiere, cómo agrupar los resultados en bloques
cómo distribuir los datos en la hoja y con qué aspecto
43
Bases de datos
Conceptos, diseño y utilización
Departament d’Informàtica
Universitat de València