Álgebra y Modelo Relacional: Conceptos Fundamentales de Bases de Datos

Enviado por federzzz y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 5,72 KB

Álgebra y Cálculo Relacional

Consta de un conjunto de operaciones que toman como entrada una o dos relaciones y producen como resultado una nueva relación.

Operaciones Fundamentales Primitivas

Operaciones Unitarias

Operan sobre relaciones individuales.

  • Selección (σ): Selecciona las tuplas que satisfacen un predicado determinado.
    Ejemplo: σnombre_sucursal=’Villa María’(Prestamo)
  • Proyección (Π): Devuelve su relación de argumento, excluyendo algunos atributos.
    Ejemplo: Πnombre_clienteciudad_cliente = ’Villa María’(Cliente)). Se obtiene la columna nombre_cliente para aquellos clientes de Villa María.
  • Renombramiento (ρ): La expresión ρx(E) devuelve el resultado de la expresión E con el nombre x.
    Ejemplo: ρprueba(Cuenta). Devuelve la expresión Cuenta con el nombre prueba.

Operaciones Binarias

Operan sobre dos relaciones.

  • Unión (U): En la operación r U s, se obtiene una relación donde la cabecera es la de r o la de s, y el cuerpo contiene todas las filas de r y de s, sin repetición de filas.
    Ejemplo: Πnombre_cliente(Cuenta) U Πnombre_cliente(Prestamo)
  • Diferencia (-): Permite hallar tuplas que están en una relación pero no en la otra.
    Ejemplo: Πnombre_cliente(Cuenta) - Πnombre_cliente(Prestamo). Se obtienen los clientes que tienen una cuenta pero no tienen préstamos.
  • Producto Cartesiano (x): Permite combinar información de cualesquiera dos relaciones, r1 x r2. En el esquema de relación r = cliente x localidad, el resultado es (cliente.nombre, localidad, idlocalidad, localidad.nombre, provincia).

Otras Operaciones del Álgebra Relacional

  • Intersección (∩): La operación r ∩ s permite hallar tuplas que están en ambas relaciones.
    Ejemplo: Πnombre_cliente(Cuenta) ∩ Πnombre_cliente(Prestamo). Se obtienen los nombres de todos los clientes que tienen tanto una cuenta como un préstamo.
  • Reunión Natural (⋈): Forma un producto cartesiano de sus dos argumentos, realiza una selección forzando la igualdad de los atributos que aparecen en ambos esquemas de relación y, finalmente, elimina los atributos duplicados.
    Ejemplo: Para obtener los clientes que pertenecen a la provincia de Córdoba: Πcliente.nombre, localidad, provincia (Cliente ⋈ Localidad)
  • Asignación (←): Funciona de manera similar a la asignación en los lenguajes de programación, permitiendo guardar el resultado de una expresión en una variable temporal para usarla en expresiones posteriores.
  • División (÷): Se utiliza para consultas que incluyen la expresión "para todos". El resultado contiene las tuplas de una relación que se asocian con todas las tuplas de otra relación.

Modelo Relacional

Tablas (Relaciones)

El modelo consta de un conjunto de tablas, también llamadas relaciones, a las que se les asigna un nombre exclusivo. Cada fila de la tabla representa una relación entre un conjunto de valores (tupla). Una cabecera de columna es un atributo.

Dominios

Cada atributo pertenece a un conjunto de valores permitidos llamado dominio. Para todas las relaciones, los dominios de todos sus atributos deben ser atómicos. Un dominio es atómico cuando sus elementos se consideran unidades indivisibles. Cabe destacar que varios atributos pueden tener el mismo dominio.

Claves

El conjunto de valores de los atributos de una tupla puede ser tal que permita identificarla unívocamente.

  • Superclave: Es un conjunto de uno o varios atributos que, considerados conjuntamente, permiten identificar de manera unívoca una tupla dentro de la relación.
  • Clave Primaria: Es una clave candidata que el diseñador de la base de datos ha elegido para identificar unívocamente las tuplas. Sus atributos no deben modificarse nunca y no pueden contener valores nulos.
  • Clave Externa o Foránea: Es un atributo o conjunto de atributos en una tabla (r1) que hacen referencia a la clave primaria de otra tabla (r2). Establece un vínculo entre ambas tablas.

Restricciones

Una restricción es una condición de obligado cumplimiento por los datos de la base de datos.

Tipos de Restricciones

  1. Definidas por el modelo relacional:
    • No puede haber dos tuplas iguales.
    • El orden de las tuplas no es significativo.
    • El orden de los atributos no es significativo.
    • Cada atributo solo puede tomar un valor del dominio en el que está inscrito.
  2. Incorporadas por los usuarios:
    • Clave Primaria: Garantiza que los atributos no puedan repetir valores ni estar vacíos (nulos).
    • Unicidad (Unique): Impide que los valores de los atributos puedan repetirse en la columna.
    • Obligatoriedad (NOT NULL): Prohíbe que el atributo no tenga ningún valor.
    • Integridad Referencial (FOREIGN KEY): Asegura que no se puedan introducir valores en la clave foránea que no existan en la clave primaria de la tabla relacionada.

Entradas relacionadas: