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