REPASO PRIMER TRIMESTRE
1º DAM – BASE DE DATOS
T2.1 MODELO CONCEPTUAL DE DATOS
MODELO CONCEPTUAL
ELEMENTOS DEL MODELO
 ENTIDAD: objeto real o abstracto del que se quiere obtener información.
 ATRIBUTO: característica o propiedad del objeto que representa a la entidad.
    **Ocurrencia elemento real que la entidad representa.
   Identificadores /Claves (#) y descriptores.
 RELACIÓN: representación de una asociación producida entre los objetos del mundo real.
 Grado de una relación:
MODELO CONCEPTUAL
ELEMENTOS DEL MODELO
 Participación de una entidad en una relación: número mínimo y máximo de ocurrencias
   que puede haber en una relación.
 Cardinalidad de una relación:
ENTIDADES FUERTES Y DÉBILES
RELACIONES DE DEPENDENCIA
 R. de dependencia  las que se producen entre las entidades fuertes y las débiles.
 Dos tipos:
                             Existencia                                                     Identificación
               La entidad débil depende de la   La entidad débil necesita de la fuerte para existir y para
               fuerte solo para existir. Es     identificarse. En estos casos la débil necesita de la clave de
               independiente para todo lo       la fuerte para formar su clave
               demás.                           primaria.
CONTROL DE REDUNDANCIAS
 Esquema = redundante: cuando al eliminar un elemento de este no se pierde información.
 ¿Qué condiciones se deben cumplir para que haya redundancia?
1. Debe haber un ciclo: cuando tras unir entidades con las relaciones, queda un espacio cerrado en su interior.
2. Las relaciones implicadas en el ciclo deben tener significado parecido.
                                                                                 Ejemplo de no redundante
3. Si se elimina una relación y no se pierde información.
                                              La entidad débil depende de la
     Ejemplo de redundante                    fuerte solo para existir. Es
                                              independiente para todo lo
                                              demás.
CONTROL DE REDUNDANCIAS
 Ejemplo de redundante    1. Si se conocen los cursos de doctorado que
                             imparte un profesor, y el departamento al
                             que está escrito cada curso  Se puede
                             deducir a qué departamento pertenece el
                             profesor.
                          2. Dado un departamento, si sabemos sus
                             cursos, y sabemos los profesores que
                             imparten los cursos  conoceremos los
                             profesores asociados al departamento.
                          3. Es decir, la asociación simbolizada por la
                             interrelación entre PROFESOR y
                             DEPARTAMENTO puede deducirse a
                             partir de otras interrelaciones, luego es
                             redundante, ya que su eliminación no
                             produciría pérdida de información.
CONTROL DE REDUNDANCIAS
  Ejemplo de no redundante
                             1. Un animal habita en un único país, pero
                                puede que no viva en ningún parque
                                Nacional.
                             2. Por lo que a través del parque no se puede
                                saber en qué país se encuentra.
RELACIONES JERÁRQUICAS
 Relación jerárquica: cuando una entidad se puede subdividir en otras, las cuales mantienen una relación ES_UN con la
     anterior.
*Ejemplo: un empleado es un administrativo; un empleado es un gerente.
    Las sub-entidades heredan las claves y los atributos de la super-entidad.
    Tipos de jerarquías según dos criterios:
I.    Nº máximo de ocurrencias: exclusiva (1 ocurrencia) e inclusiva (+1 ocurrencia).
RELACIONES JERÁRQUICAS
II. Correspondencia de ocurrencias (según si a una ocurrencia de la super-entidad debe o no corresponderle varias o
ninguna ocurrencia en las sub-entidades): jerarquía total (1 como mínimo) y jerarquía parcial (sin mínimo).
RELACIONES JERÁRQUICAS
 Ejemplos:
T2.2 MODELO RELACIONAL DE DATOS
ESTRUCTURA
      Modelo relacional se representa en forma de tabla.
Tabla= conjunto de tuplas (filas y registros) y atributos (columnas o campos).
      Dominio o tipos de datos: conjunto finito de valores homogéneos que puede
       tomar cada atributo (carácter, entero, decimal, fecha, hora, booleano, memo, objeto)
Existen dos tipos de dominios: generales (valores comprendidos entre un mín. y máx.) y restringidos (pertenecen a un conjunto de
valores específicos).
      De las tablas se derivan los siguientes conceptos:
I.      Cardinalidad (num filas)
II.     Grado (num columnas)
III.    Valor (intersección entre fila y columna)
IV.     Valor nulo (null)
CLAVES
 En una relación no hay tuplas repetidas  se identifican de manea única según los valores de sus atributos.
 Todas las filas se asocian a un ID = clave.
 Clave candidata: conjunto de atributos que identifica de forma única y mínima cada tupla de la relación. Puede
      haber más de una clave candidata:
I.     Clave primaria o principal (PK): identificativa, no puede ser nula.
II.    Clave alternativa: aquellas claves no elegidas como clave primaria.
III. Clave ajena (FK): de una R1 es el conjunto de atributos cuyos valores tienen que coincidir con los valores de la
       PK de otra R2.
RESTRICCIONES
 Los datos de la BBDD debe cumplir las reglas establecidas. Los tipos de restricciones son:
I.   Restricciones inherentes al modelo: características propias de una relación que deben cumplirse, con la cuál
     se diferencia una relación de una tabla. No hay tuplas iguales, el orden da igual, las PK no pueden ser null…
II. Restricciones semánticas o de usuario: semántica del mundo real. Hacen que las ocurrencias de los
     esquemas sean válidos. PRIMARY KEY, UNIQUE, NOT NULL, FOREING KEY.
FOREING KEY  indica que los valores de clave ajena en la relación hijo se corresponde con la clave primaria del
padre. Hay que tener en cuenta las operaciones de borrado y actualización: CASCADE, RESTRICT, SET NULL, SET
DEFAULT.
III. Restricciones de verificación (check): Esta restricción permite especificar condiciones que deben cumplir
     los valores de los atributos. Cada vez que se realice una inserción o una actualización de datos se comprueba si
     los valores cumplen la condición. Rechaza la operación si no se cumple.
TRANSFORMACIÓN DE ATRIBUTOS
Modelo relacional = modelo lógico de datos.
TRANSFORMACIÓN DE JERARQUÍAS
TRANSFORMACIÓN DE JERARQUÍAS
NORMALIZACIÓN
 La normalización de bases de datos relacionales toma un esquema relacional y le aplica un conjunto de técnicas
   para producir un nuevo esquema que representa la misma información pero contiene menos redundancias y evita
   posibles anomalías en las inserciones, actualizaciones y borrados.
      1 Forma Normal
      II Forma Normal
      III Forma Normal
NORMALIZACIÓN – I FORMA NORMAL
 Una tabla se encuentra en 1FN si no contiene atributos multivalor, es decir, no hay ninguna fila que tenga algún
   atributo con más de un valor.
 Solución si no se encuentra en 1FN: la fila con el atributo multivalor debe descomponerse en varias filas. Cada
   una de estas filas deberán respetar el mismo contenido que la original, excepto en el caso del atributo multivalor,
   que tendrá en cada una de las nuevas filas uno de los valores que se guardaban en la fila original.
NORMALIZACIÓN – 2 FORMA NORMAL
 En la 2FN se habla de las dependencias funcionales entre los atributos clave y no clave.
 Dependencia funcional entre dos atributos A y B si para cada valor de A existe un único valor de B.
 Un esquema relacional está en 2FN si está en 1FN y si cada uno de los atributos no clave, es decir, los que no
   constituyen la clave primaria, dependen funcionalmente de la clave primaria en su totalidad y no de una parte.
 Las dependencias funcionales que tenemos son las siguientes:
Como la clave es (nss, email), las dependencias de nombre, salario y email son incompletas, por lo que la relación no
está en 2FN.
NORMALIZACIÓN – 3 FORMA NORMAL
 Una relación está en 3FN si está en 2FN y cada atributo que no está incluido en la clave primaria no depende
   transitivamente de la clave primaria.
 A partir del esquema 2FN  buscamos dependencias funcionales entre atributos que no estén en la clave.
 Se encuentran las siguientes dependencias:
                                                                                   Jefe de área      3000
                                                                                   Administrativo    1500
ÁLGEBRA RELACIONAL
OPERACIONES DE LA TEORÍA MATEMÁTICA DE CONJUNTOS
ÁLGEBRA RELACIONAL
OPERACIONES DE LA TEORÍA MATEMÁTICA DE CONJUNTOS
    UNIÓN
ÁLGEBRA RELACIONAL
OPERACIONES DE LA TEORÍA MATEMÁTICA DE CONJUNTOS
  INTERSECCIÓN
ÁLGEBRA RELACIONAL
OPERACIONES DE LA TEORÍA MATEMÁTICA DE CONJUNTOS
   DIFERENCIA
ÁLGEBRA RELACIONAL
OPERACIONES DE LA TEORÍA MATEMÁTICA DE CONJUNTOS
PRODUCTO CARTESIANO
                                   Si hubiera dos campos con el mismo
                                   nombre en ambas tablas el nombre de los
                                   campos de la relación resultante irá
                                   precedido por el nombre de la tabla
                                   seguido de un punto.
ÁLGEBRA RELACIONAL
OPERACIONES ESPECÍFICAS PARA LAS BASES DE DATOS RELACIONALES
   SELECCIÓN
ÁLGEBRA RELACIONAL
OPERACIONES ESPECÍFICAS PARA LAS BASES DE DATOS RELACIONALES
   PROYECCIÓN
ÁLGEBRA RELACIONAL
OPERACIONES ESPECÍFICAS PARA LAS BASES DE DATOS RELACIONALES
COMBINACIÓN o JOIN
RESUMEN OPERACIONES ÁLGEBRA RELACIONAL
T3 SQL
CONSULTAS SENCILLA DE DATOS
      CONSULTAS DATOS
1                       VII
                        VIII
II
III                            IX
                               X
IV
VI
COMBINACIÓN DE RESULTADOS
 UNION
 Las filas duplicadas solo aparecen una vez, excepto que se utilice UNION ALL.
Restricciones:
I.    Las consultas deben contener el mismo número de columnas.
II.   Los tipos de datos de cada columna deben ser iguales.
III. Ninguna de las consultas puede estar ordenada, pero puede ordenarse la respuesta final.
COMBINACIÓN DE RESULTADOS
 CONSULTAS PADRE/HIJO: relacionan tablas mediante claves primarias y foráneas.
 Las composiciones no tienen porque implicar relaciones padre/hijo. Es posible componer mediante: dos columnas
   de tipo de datos igual y desigualdades o cualquier otro tipo de relación.
CONSULTAS SUMARIAS
 Realizan cálculos sobre los resultados de una consulta.
 SUM, AVG, MAX, MIN, COUNT
 GROUP BY, HAVING
SUBCONSULTA
 Son consultas SQL que se utilizan como condiciones en las cláusulas WHERE o HAVING.
 Permiten descomponer una consulta complicada en consultas más sencillas.
 Una subconsulta solo puede devolver una única columna.
TEST DE EXISTENCIA
 EXISTS/NO EXISTS
TEST CUANTIFICADOS
 Uso de operadores de comparación =, <>,<,<=,<,<=
 Algún valor de la subconsulta: ANY
 Todos los valores de la subconsula: ALL
INSERT
  ÚNICA   MÚLTIPLES
DELETE
  ÚNICA   MÚLTIPLES
UPDATE
  ÚNICA   MÚLTIPLES
CREATE TABLE
ELIMINACIÓN/MODIFICACIÓN TABLA
EJERCICIOS DE REPASO
HTTPS://PARZIBYTE.ME/BLOG/2018/02/06/EJERCICIOS-RESUELTOS-CONSULTAS-SQL-MYSQL/