Your SlideShare is downloading. ×
  • Like
  • Save
T3 Modelo de Datos Relacional
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

T3 Modelo de Datos Relacional

  • 11,290 views
Published

Sobre el modelo de datos relacional, Álgebra Relacional

Sobre el modelo de datos relacional, Álgebra Relacional

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
11,290
On SlideShare
0
From Embeds
0
Number of Embeds
4

Actions

Shares
Downloads
0
Comments
4
Likes
9

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Sistemas Gestores de Base de Datos Tema.- 3 El Modelo Relacional
  • 2. 3.1.- Introducción
    • Modelo relacional basado en las matemáticas:
      • Teoría de conjuntos
      • Lógica de predicados
    • La teoría matemática:
      • Predecible
      • Fiable
      • Seguro
  • 3. 3.2.- El modelo relacional
    • A nivel lógico como tablas
    • El modelo relacional como modelo de datos:
      • Estructura de datos
      • Integridad de datos
      • Manejo de datos
  • 4. 3.3.- Estructura de datos relacional
    • Relaciones (definiciones):
      • Relación: es una tabla con filas y columnas.
      • Atributo: columnas (campos)
      • Registros: filas (registros individuales)
      • Dominio: valores de los atributos
      • Tupla: fila de la relación=registro
      • Grado: numero de atributos de la relación
      • Cardinalidad: numero de tuplas de la relación
      • Definición formal de la relación .
  • 5. 3.3.- Estructura de datos relacional
    • Relaciones:
      • Relación
      • Atributos
      • Registro
      • Dominio (atributo)
      • Tupla=registro
      • Grado: 6
      • Cardinalidad: 5
  • 6. 3.3.- Estructura de datos relacional
    • Propiedades de las relaciones :
      • Cada relación un nombre unico.
      • Los valores de los atributos son atómicos.
      • No hay dos atributos que se llamen igual.
      • El orden de los atributos no importa.
      • Cada tupla es distinta
      • El orden de las tuplas no importa
  • 7. 3.3.- Estructura de datos relacional Relación Dominio
  • 8. 3.3.- Estructura de datos relacional
    • Tipos de relaciones:
      • Relaciones base.
      • Vistas.
      • Instantaneas.
      • Resultados de consultas
      • Resultados intermedios.
      • Resultados temporales
  • 9. 3.3.- Estructura de datos relacional
    • Claves:
      • Superclave: identifican de modo único
      • Clave candidata: superclave unica e irreducible
      • Clave compuesta: formada por mas de un atributo
      • Clave primaria: clave candidata para identificar tuplas
      • Claves altenativas: las claves candidatas que no son elegidas como primaria.
      • Clave ajenas: atributos que son clave primaria en otra relación.
  • 10. 3.3.- Estructura de datos relacional
    • Esquema de una BDR:
      • Nombre (atributos)
        • Oficina ( Onum , Calle, Area, Población, Teléfono, Fax)
          • clave primaria
      • Relación—clave ajena--> Relación
          • Onum
        • Plantilla Oficina:
          • Oficina a la que pertenece el empleado
  • 11. 3.3.- Estructura de datos relacional Esquema Diagramas Referenciales
  • 12. 3.4.- Reglas de integridad
    • Para garantizar que los datos son correctos.
      • Nulos.
      • R.I. de entidades: ninguno de los atributos que componen la clave primaria pueden ser nulos.
      • R.I. Referencial: si hay alguna clave ajena en una relación sus valores deben coincidir con los valores de la clave primaria a la que hacen referencia.
      • Reglas de negocio.
  • 13. 3.5.- Lenguajes relacionales
    • Álgebra relacional
        • Selección
        • Proyección
        • Producto cartesiano
        • Unión
        • Diferencia
        • Concatenación Join
        • Concatenación externa
        • Interseción
        • División
        • Agrupación
    Unarias: trabaja sobre una sola relación Binarias: trabaja sobre una par de relaciones Fundamentales
  • 14. 3.5.1- Álgebra relacional
    • Selección :Subconjuto que cumple una determinada condición
    • Plantilla WHERE salario>25000
  • 15. 3.5.1- Álgebra relacional
    • Proyección : un subconjunto de datos
    • Plantilla [nombre, apellido]
  • 16. 3.5.1- Álgebra relacional
    • Proyección : un subconjunto de datos
    • Plantilla [nombre, apellido]
  • 17. 3.5.1- Álgebra relacional
    • Producto cartesiano : concatenación de una relación (tabla) con todas las tuplas (registros o filas) de otra relación.
        • Inqulino [qnum,nombre,apellido]
        • X
        • Visita [qnum,inum.comentario]
  • 18. 3.5.1- Álgebra relacional
    • Producto cartesiano : concatenación de una relación (tabla) con todas las tuplas (registros o filas) de otra relación.
    Inquilino Visitas
        • Inqulino [qnum,nombre,apellido]
        • X
        • Visita [qnum,inum.comentario]
  • 19. 3.5.1- Álgebre relacional
    • Unión : la unión de dos tablas, las cuales son compatibles
      • Oficina [area] UNIÓN Inmueble [area]
    • U =
  • 20. 3.5.1- Álgebre relacional
    • Unión : la unión de dos tablas, las cuales son compatibles
      • Oficina [area] UNIÓN Inmueble [area]
    • U =
  • 21. 3.5.1- Álgebre relacional
    • Diferencia :las tuplas que se encuentran en una relación R y no en la S
      • Oficina [población] MINUS Inmueble[población]
    • - =
  • 22. 3.5.1- Álgebre relacional
    • Diferencia :las tuplas que se encuentran en una relación R y no en la S
      • Oficina [población] MINUS Inmueble[población]
    • - =
  • 23. 3.5.1- Álgebre relacional
    • Concatenación (join) : las tuplas de R concatenadas con las de S que tienen atributos comunes
    • Inquilino [qnum,nombre,apellido] JOIN Visitas [qnum, inum,comentario]
  • 24. 3.5.1- Álgebre relacional
    • Concatenación externa :ademas muestra las tuplas de R que no tienen valores comunes con S. (Inmueble JOIN Visitas (+)) [inmueble.inum,calle,población,visitas.qnum,fecha,comentario]
  • 25. 3.5.1- Álgebra relacional
    • Intersección : las tuplas de R que tambien se están en S. (R y S deben ser compatibles).
    • Tambien se puede representar como la diferencia. R Interseción S= R menos (R menos S)
      • Oficina[población] INTERSECT Inmueble[poblacion]
  • 26. 3.5.1- Álgebra relacional
    • Intersección : las tuplas de R que tambien se están en S. (R y S deben ser compatibles).
    • Tambien se puede representar como la diferencia. R Interseción S= R menos (R menos S)
      • Oficina[población] INTERSECT Inmueble[poblacion]
  • 27. 3.5.1- Álgebra relacional
    • División : A cjto atributos de R y B cjto de atributos de S, tal que B es un subconjuto de A y si C = A-B, el resultado es C (las tuplas de R que estan acompañadas de S)
    • Visitas [qnum, inum] DIV (Inmueble where hab=3)[inum ]
    • / =
  • 28. 3.5.1- Álgebra relacional
    • División : A cjto atributos de R y B cjto de atributos de S, tal que B es un subconjuto de A y si C = A-B, el resultado es C (las tuplas de R que estan acompañadas de S)
    • Visitas [qnum, inum] DIV (Inmueble where hab=3)[inum ]
    • / =
  • 29. 3.5.1- Álgebra relacional
    • Agrupación : Agrupa las tuplas de R que tienen los mismos valores en los atributos especificados, para realizar un cálculo sobre ellos.
      • Cálculos: SUM, MAX, MIN, COUNT y AVG
        • Plantilla GROUPBY(oficina) ADD SUM (salario) AS Salario_total
  • 30. 3.5.1- Álgebra relacional
    • Agrupación : Agrupa las tuplas de R que tienen los mismos valores en los atributos especificados, para realizar un cálculo sobre ellos.
      • Cálculos: SUM, MAX, MIN, COUNT y AVG
        • Plantilla GROUPBY(oficina) ADD SUM (salario) AS Salario_total
  • 31. 3.5.1- Álgebra relacional
    • Agrupación : Agrupa las tuplas de R que tienen los mismos valores en los atributos especificados, para realizar un cálculo sobre ellos.
      • Cálculos: SUM, MAX, MIN, COUNT y AVG
        • Plantilla GROUPBY(oNum) ADD SUM (salario) AS Salario_total
  • 32. 3.5.1- Álgebra relacional
        • Selección
        • Proyección
        • Unión
        • Interseción
        • Diferencia
        • Join
        • División
        • Producto cartesiano
    Resumen Gráfico
  • 33. 3.5.2- Cálculo relacional
    • Orientado a tuplas (Codd)
        • RANGE OF PX IS PLANTILLA
        • PX WHERE PX.salario >10000
        •  ) NOT  PX (PX.población = 'castellón')
        •  )  PX (PX.población = 'castellón')
    • Orientado a dominios
        • PLANTILLA(puesto:px, onum:ox)
        • PLANTILLA(puesto:'supervisor', onum:'03')
  • 34. 3.5.2- Cálculo relacional
    • Orientado a tuplas
    • Rango de PX es PLANTILLA
    • PX WHERE PX.salario >10000
    • Rango de PX es PLANTILLA
    • Rango de OX es OFICINA
    • OX WHERE  PX (PX.onum=OX.onum AND PX.fecha_nac>= '1/1/65')
    • Álgebra Relacional
    • PLANTILLA WHERE salario >10000
    • PLANTILLA JOIN OFICINA WHERE fecha_nac>='1/1/65'
    Obtener las oficinas cuyos empleados nacieron despues de 1965 Obtener los empleados que ganan mas de 10000€
  • 35. 3.6.- Vistas
    • Es una relación virtual
      • Seguridad
      • Facilidades de formato
      • Simplifican operaciones
    • Proporcionan independencia de datos a nivel lógico.