2.1.- Relación o tabla. Tuplas. Dominios.
Para saber más
Aquí tienes unos enlaces sobre teoría de conjuntos y lógica de predicados:
A partir de ahora, nosotros veremos una relación como una tabla con filas y columnas. Podemos asociar atributos a columnas y tuplas a filas.
- Atributos: es el nombre de cada dato que se almacena en la relación (tabla). En la tabla Alumnos, que se muestra a la derecha, los atributos o columnas serían DNI, nombre y apellidos..
El nombre del atributo debe describir el significado de la información que representa. En la tabla Empleados, el atributo Sueldo almacenará el valor en euros del sueldo que recibe cada empleado. A veces es necesario añadir una pequeña descripción para aclarar un poco más el contenido. Por ejemplo, si el sueldo es neto o bruto.
- Tuplas: Se refiere a cada elemento de la relación o tabla. En la tabla alumnos hay 5 tuplas con los atributos DNI, nombre y apellidos de cada uno de los alumnos..
Cada una de las filas de la tabla se corresponde con la idea de registro y tiene que cumplir que:
- Cada tupla se debe corresponder con un elemento del mundo real.
- No puede haber dos tuplas iguales (con todos los valores iguales).
Está claro que un atributo en una tupla no puede tomar cualquier valor. No sería lógico que en un atributo Población se guarde "250€". Estaríamos cometiendo un error, para evitar este tipo de situaciones obligaremos a que cada atributo sólo pueda tomar los valores pertenecientes a un conjunto de valores previamente establecidos, es decir, un atributo tiene asociado un dominio de valores.
A menudo un dominio se define a través de la declaración de un tipo para el atributo (por ejemplo, diciendo que es un número entero entre 1 y 16), pero también se pueden definir dominios más complejos y precisos. Por ejemplo, para el atributo Sexo de los usuarios, podemos definir un dominio en el que los valores posibles sean "M" o "F" (masculino o femenino).
Una característica fundamental de los dominios es que sean atómicos, es decir, que los valores contenidos en los atributos no se pueden separar en valores de dominios más simples.
Un dominio debe tener: Nombre, Definición lógica, Tipo de datos y Formato.
Por ejemplo, si consideramos el Sueldo de un empleado, tendremos:
- Nombre: Sueldo.
- Definición lógica: Sueldo neto del empleado
- Tipo de datos: número entero.
- Formato: 9.999€.
Conjunto de valores que puede tomar un atributo o columna. Ej. el dominio de la columna sueldo es entero positivo. El dominio de la columna sexo es H o M.