BASE DE DATOS
TEMAS A REVISAR
1.- Modelo Entidad - Relación
2.- Diseño de Base de Datos relacionales
3.- Sentencias SQL
4.- Administración de la base de datos
5.- BI
Modelo Entidad – Relación
Modelo Entidad – Relación
(E-R "Entity relationship)
Es una herramienta para el modelado de datos, que permite
expresar nuestra BD en un modelo fácil de entender y
analizar. Así también, facilita la construcción posterior de un
modelo relacional.
Modelo Entidad – Relación / Elementos
1.- Entidad.-
Es un objeto o elemento (Real o Abstracto) acerca del cual
se puede almacenar información.
Entidad
Ejemplo.-
Sucursales
Clientes
Productos
Modelo Entidad – Relación / Elementos
2.- Relación.-
Permite asociar dos o mas entidades, permitiendo
representar con mayor claridad lo que sucede en el
mundo real.
Para la relación de entidades se utiliza verbos o acciones.
Se puede conjugar la acción y se realiza una lectura de ida y vuelta.
Relación
Ejemplo.-
Se tiene Vendedores los cuales atienden a los Clientes
Se tiene dos lecturas
Vendedores Atienden Clientes
Lectura de ida: El vendedor atiende al cliente Relación
Binaria
Lectura de vuelta: El cliente es atendido por el vendedor
Relación
Ejemplo.-
Atleta Obtiene Premio
Jefe
Director
Boda
Persona Vendedores
Empleados
Relación
Ejemplo.-
Se tiene ventas donde participan: vendedores, clientes y
productos.
Productos
Vendedores Venta Clientes
Relación
Venta Ternaria
Modelo Entidad – Relación / Elementos
3.- Atributos.-
“En la mayoría de los casos son propiedades de una
entidad”.
Atributos
Ejemplo.-
DNI
Cliente
Atributos
Ejemplo.-
Atributos o Columnas
Registros, Filas o Tuplas
Clave Primaria
La clave primaria es aquel o aquellos atributos que
identifican de forma única las entidades.
Dirección Nombres dni
Persona
Atributos
Ejemplo.-
Identificador
Clave Primaria
Tipo Idnum
Idnum Tipo
1 Persa
2 Siames
1 Persa
Gato
3 Siames
Cardinalidad
Las cardinalidades indican el numero de entidades con
las que se puede relacionar una entidad.
a.- Uno a Uno: (1:1)
b.- Uno a varios: (1:N)
c.- Varios a Uno: (N:1)
d.- Varios a Varios: (N:M)
Cardinalidad Uno a Uno (1:1)
"Una entidad A está asociada a lo mucho con una entidad
B, y una entidad B a lo mucho con una entidad A"
Ejemplo: Un país y una capital
Cardinalidad Uno a Muchos (1:N)
"Una entidad A está asociada con una o varias entidades
B. Una entidad B, sin embargo, puede estar asociada a lo
mucho con una entidad A“.
Ejemplo: Un autor y sus libros.
Cardinalidad Muchos a Muchos (M:N)
Cada ocurrencia de una entidad puede relacionarse con
varias ocurrencias de otra entidad y viceversa.
Ejemplo: Proveedores y artículos.
Cardinalidad de una relación
Número de ocurrencias que se pueden dar de una relación;
con cuantas ocurrencias de B se puede relacionar A y con
cuantas ocurrencias de A se puede relacionar B.
Cardinalidad
1,N
(1,1) (1,N)
Persona Comprar Auto
Una persona puede comprar mínimo 1, máximo varios automóviles.
Un auto puede ser comprado por mínimo 1 persona y máximo 1
persona.
Cardinalidad
? ? ? ? ? ?
1,N
(1,1) (0,N)
Departamento Pertenece Empleado
Mínimo: 0
Mínimo: 1
Máximo: N
Mínimo: 1
Cardinalidad
(1,1)
(0,N)
1,N
Cardinalidad
Vendedor Atiende Cliente
Un vendedor atiende a muchos clientes, y muchos clientes
son atendidos por un solo vendedor
Cardinalidad
En un centro escolar se imparten muchos cursos.
Y cada curso está formado por un grupo de
alumnos, dentro de cada curso un alumno es el
delegado del grupo. Los alumnos cursan
asignaturas, y una asignatura puede o no ser
cursada por los alumnos.
Cardinalidad
Cardinalidad
Modelo Entidad Relación N:M
N:M Atributo
Clave primaria E1
Clave primaria E2
Entidad 1 Relación Entidad 2
Transformar relación en tabla Atributo
Clave Tabla: Clave E1, Clave E2
Modelo relacional
Modelo Relacional
Es un modelo de base de datos que nos permite convertir
un modelo conceptual en un esquema lógico.
Las reglas básicas para transformar un
diagrama E-R a un esquema relacional son:
1.- Las entidades pasan a ser tablas .
2.- Atributos. Los atributos pasan a ser columnas
3.- Identificadores principales. Pasan a ser claves primarias.
4.- Identificadores candidatos. Pasan a ser claves
candidatas.
Esto hace que la transformación sea de esta forma:
Las reglas básicas para transformar un
diagrama E-R a un esquema relacional son:
4.- Toda relación N:M se transforma en una tabla.
Modelo Entidad Relación N:M
N:M Fecha de
Cedula Compra Id Producto
Cliente Compra Producto
Tabla Compra Fecha de
Compra
Clave Tabla: Cedula, Id Producto
Las reglas básicas para transformar un
diagrama E-R a un esquema relacional son:
4.- Toda relación 1:M no requieren ser transformadas en
una tabla en el modelo relacional .
Trabajan
En toda interrelación de uno a muchos se debe realizar la propagación
de llave primaria
Relaciones recursivas
Las relaciones recursivas se tratan de la misma forma que
las otras, sólo que un mismo atributo puede figurar dos
veces en una tabla como resultado de la transformación:
NORMALIZACIÓN DE ESQUEMAS
RELACIONALES
Problemas del esquema relacional
Después de obtener el esquema relacional el modelo
entidad relación que representaba la BD, normalmente se
tiene una buena base de datos. Pero otras veces, debido a
fallos en el diseño en esta fase, tendremos un esquema que
puede producir problemas como:
Redundancia.€
Ambigüedades.€
Pérdida de restricciones de integridad.
NORMALIZACIÓN DE ESQUEMAS RELACIONALES
El proceso de normalización consiste en aplicar una serie de
reglas con el fin de eliminar las dependencias no deseadas
entre los atributos.
Es decir:
1.- Evitar la redundancia, ambigüedades de los datos.
2. Proteger la integridad de los datos.
Formas Normales:
1.- Primera Forma Normal (1FN): Se eliminan los grupos
repetitivos. Se trata de que cada atributo guarde la menor
cantidad de información posible. Impedir que un atributo de
una tupla pueda tomar más de un valor..
Formas Normales:
Formas Normales:
2.- Segunda forma normal 2FN. Dependencia
completa. Estar en 1FN y si sus atributos no
principales (que no pertenecen a la clave
primaria) dependen de forma completa de la
clave primaria (de todos los atributos de la clave
primaria).
Formas Normales:
2.- Segunda forma normal 2FN. Dependencia
completa. Ejemplo: Suponiendo que el DNI y el
número de curso formen una clave principal para
esta tabla.
Formas Normales:
La tabla T(A,B, C, D) donde:
C depende funcionalmente sólo de A. (A -> C)
D depende funcionalmente de A y B. (AB -> D)
Entonces: debe dividirse la tabla en 2 tablas
T1 (A, C) y T2 (A,B, D)
Así se eliminaron las dependencias parciales de la
clave primaria en la tabla T
Formas Normales:
Por ejemplo, en el registro.
Suministros(Cod_Objeto, Cod_Almacen, Cantidad,
Ubicación_Almacen)
Donde la clave primaria está formada por los campos
Cod_Objeto y Cod_Almacen.
Para evitar este problema, el registro se puede
descomponer del siguiente modo:
Suministros (Cod_Objeto, Cod_Almacen, Cantidad)
Almacenes (Cod_Almacen, Ubicacion_Almacen)
Formas Normales:
2.- La tercera forma normal 3FN.- Se eliminan las
dependencias transitivas. Estar en 2FN y todo
atributo que no está en la clave primaria no
depende transitivamente de la clave primaria.
El valor de esta columna debe depender
directamente de la clave y no por un campo
intermedio no principal de la tabla que a su vez
depende funcionalmente de la clave principal
(dependencia transitiva).
Formas Normales:
Formas Normales:
Medicos (Cod_Medico, Cod_Especialidad,
Nombre_Especialidad)
Para conseguir la 3FN sería conveniente descomponerlo de
la siguiente manera:
Medicos (Cod_Medico, Cod_Especialidad)
Especialidad (Cod_Especialidad, Nombre_Especialidad)
TEST DE MER
Test
Seleccione las palabras que completan el siguiente concepto.
El modelo de datos Entidad Relación está basado en una percepción
del mundo real que consiste en una colección de objetos básicos
llamados_______ y de_______entre estos objetos.
a.- relaciones, restricciones.
b.- Entidades, relaciones
c.- Tablas, asociaciones
d.- Campos, tuplas
Test
Seleccione las palabras que completan el siguiente concepto.
El modelo de datos Entidad Relación está basado en una percepción
del mundo real que consiste en una colección de objetos básicos
llamados_______ y de_______entre estos objetos.
a.- relaciones, restricciones.
b.- Entidades, relaciones
c.- Tablas, asociaciones
d.- Campos, tuplas
Test
Seleccione las palabras que completan el siguiente concepto.
El modelo de datos Entidad Relación emplea tres conceptos básicos:
_______, _______,______.
a.- tablas, columnas, filas.
b.- Tablas, tuplas, columnas
c.- conjunto entidades, conjunto de relaciones, atributos
d.- esquema, diseño conceptual, diseño físico
Test
Seleccione las palabras que completan el siguiente concepto.
El modelo de datos Entidad Relación emplea tres conceptos básicos:
_______, _______,______.
a.- tablas, columnas, filas.
b.- Tablas, tuplas, columnas
c.- conjunto entidades, conjunto de relaciones, atributos
d.- esquema, diseño conceptual, diseño físico
Test
Considere la base de datos EQUIPO DE FUTBOL que tiene las
tablas Club y Futbolista. ¿Cuál es la relación que existe entre estas
dos tablas?
a.- Uno a Uno.
b.- Varios a Uno.
c.- Varios a Varios.
d.- Uno a Varios
Test
Considere la base de datos EQUIPO DE FUTBOL que tiene las
tablas Club y Futbolista. ¿Cuál es la relación que existe entre estas
dos tablas?
a.- Uno a Uno.
b.- Varios a Uno.
c.- Varios a Varios.
d.- Uno a Varios
Test
El modelo Entidad Relación:
a) Se basa en Entidades, Relaciones y sus
Atributos.
b) Se basa en conexiones padre-hijo.
c) Se basa en el Modelo en Red.
d) Todas son correctas.
Test
El modelo Entidad Relación:
a) Se basa en Entidades, Relaciones y sus
Atributos.
b) Se basa en conexiones padre-hijo.
c) Se basa en el Modelo en Red.
d) Todas son correctas.
Test
Una relación 1:M entre 2 tablas (A y B), da lugar a:
a) Tabla A con sus atributos. Tabla B con sus atributos.
b) Tabla A con sus atributos. Tabla B con sus atributos más
los de la clave primaria de la entidad A.
c) Tabla B con sus atributos. Tabla A con sus atributos más
los de la clave primaria de la entidad B.
d) Se obtienen 3 tablas: Tabla A, Tabla B más la tabla R (la
resultante de la relación).
Test
Una relación 1:M entre 2 tablas (A y B), da lugar a:
a) Tabla A con sus atributos. Tabla B con sus atributos.
b) Tabla A con sus atributos. Tabla B con sus atributos más
los de la clave primaria de la entidad A.
c) Tabla B con sus atributos. Tabla A con sus atributos más
los de la clave primaria de la entidad B.
d) Se obtienen 3 tablas: Tabla A, Tabla B más la tabla R (la
resultante de la relación).
Test
En el modelo entidad relación:
a) Las entidades tienen cardinalidad.
b) Los atributos tienen cardinalidad.
c) Las relaciones tienen cardinalidad.
d) Todas son correctas.
Test
En el modelo entidad relación:
a) Las entidades tienen cardinalidad.
b) Los atributos tienen cardinalidad.
c) Las relaciones tienen cardinalidad.
d) Todas son correctas.
Test
En cuanto a la integridad referencial, se pueden producir errores
en los datos …
a) Si modificamos el valor de la clave principal de un registro que
no tiene “hijos”.
b) Si borramos una fila de la tabla principal y ese registro tiene
“hijos”.
c) Si borramos una fila de la tabla secundaria cuyo valor apunta a
la tabla principal.
d) En cualquiera de los anteriores.
Test
En cuanto a la integridad referencial, se pueden producir errores
en los datos …
a) Si modificamos el valor de la clave principal de un registro que
no tiene “hijos”.
b) Si borramos una fila de la tabla principal y ese registro tiene
“hijos”.
c) Si borramos una fila de la tabla secundaria cuyo valor apunta a
la tabla principal.
d) En cualquiera de los anteriores.
Base de datos relacional
Características de una Base de Datos
Se compone de varias tablas o relaciones.
No pueden existir dos tablas con el mismo nombre ni
registro.
Cada tabla es a su vez un conjunto de registros (filas y
columnas).
La relación entre una tabla padre y un hijo se lleva a cabo
por medio de las claves primarias y ajenas (o foráneas).
terminología relacional
Tupla: Cada fila de la tabla.
€ tributo: Cada columna de la tabla
A
€
Grado: Número de atributos de la tabla
€
Cardinalidad: Número de tuplas de una tabla
€
Dominio: Conjunto válido de valores representables por
un atributo
Claves
clave candidata.- Conjunto de atributos de una tabla que
identifican unívocamente cada tupla de la tabla.
clave primaria.- Clave candidata que se escoge como
identificador de las tuplas.
clave externa o secundaria.- Atributo de una tabla
relacionado con una clave de otra tabla.
Restricciones
Se trata de unas condiciones de obligado
cumplimiento por los datos de la base de datos.
Las hay de varios tipos.
Inherentes.- Son aquellas que no son determinadas por lo s usuarios,
sino que son definidas por el hecho de que la base de datos sea
relacional. Por ejemplo: El orden de los atributos no importa .
Semánticas.- El modelo relacional permite a los usuario incorporar
restricciones personales a los datos. ejemplo: Clave primaria, Regla de
validación.