RELACIÓN
Una Relación ≈ Tabla de datos
*Por eso se llaman Bases de Datos Relacionales
CONCEPTOS
*Esquema: significa como está construida la tabla
+Película (título, año, duración)
Tuplas: también llamado fila o registro representa un objeto único de datos implícitamente estructurados en una tabla.
Dominio: Para cada atributo hay un conjunto de valores permitidos, llamado dominio de ese atributo. Especifica un conjunto de valores que son válidos a ingresar sobre una columna específica para una tabla de la base de datos.
Esta integridad se verifica a través:
1.Del tipo de los datos a introducir (numérico, alfanumérico, alfabético, etc.).
2.De una validación de los valores de datos que se ingresan (utilizando funciones del DBMS)
1.Del tipo de los datos a introducir (numérico, alfanumérico, alfabético, etc.).
2.De una validación de los valores de datos que se ingresan (utilizando funciones del DBMS)
NOTACIÓN
- Atributos ------ Ai
- Relación R ------ R(A1, A2, A3, ..., An)
- Dominio de Ai ------ dom(Ai)
*Es importante recordar que una relación es un conjunto y por tal motivo no está ordenado y dentro del disco se almacenan como un conjunto de tuplas desordenadas.
- Notación para la tuplas ------ t = <Mar Adentro, 2004, 125> ∈ Película
- Notación para subconjunto de tupla ------ t[año, duración] = <2004, 125>
- Restricción de dominio ------ t[A] = <x> ⇔x ∈dom(A)
*En ciertos casos NULL ∈ dom(A) lo que significa que la relación acepta valores nulos
CLAVES CANDIDATAS Y PRIMARIAS
*La elección de una clave primaria es arbitraria, por lo general se escoge la que tenga pocos atributos y que identifique de manera única a cada tupla.
*Una clave puede ser un atributo, varios atributos (clave compuesta)
CLAVES FORÁNEAS
Una clave foránea o clave ajena (o Foreign Key FK) es una limitación referencial entre dos tablas. La clave foránea identifica una columna o grupo de columnas en una tabla (tabla hija o referendo) que se refiere a una columna o grupo de columnas en otra tabla (tabla maestra o referenciada). Las columnas en la tabla referendo deben ser la clave primaria u otra clave candidata en la tabla referenciada.
INTEGRIDAD REFERENCIAL
Es una propiedad deseable en las bases de datos. Gracias a la integridad referencial se garantiza que una entidad (fila o registro) siempre se relacione con otras entidades válidas, es decir, que existen en la base de datos. Implica que en todo momento dichos datos sean correctos, sin repeticiones innecesarias, datos perdidos y relaciones mal resueltas.
Ejemplo: supongamos una base de datos con las entidades Persona y Factura. Toda factura corresponde a una persona y solamente una. Implica que en todo momento dichos datos sean correctos, sin repeticiones innecesarias, datos perdidos y relaciones mal resueltas.
Supongamos que una persona se identifica por su atributo DNI (Documento Nacional de Identidad). También tendrá otros atributos como el nombre y la dirección. La entidad Factura debe tener un atributo DNI_cliente que identifique a quién pertenece la factura.
Por sentido común es evidente que todo valor de DNI_cliente debe corresponder con algún valor existente del atributo DNI de la entidad Persona. Esta es la idea intuitiva de la integridad referencial.
CONVERTIR ENTIDAD-RELACIÓN EN MODELO RELACIONAL
- Se agregan claves donde sea necesario.
- Cada entidad se transforma en una tabla con los mismos atributos.
- Cada relación se transforma en una tabla en que los atributos son las claves de cada entidad participante.
- La clave primaria (PRIMARY KEY) de la entidad será la clave primaria de la relación.
- Los mapeos 1:M se expresan con la repetición del lado 1 en el lado M (clave foránea).
- Los mapeos M:N generan una tabla.
- Para las entidades M:N que generaron una tabla, la clave primaria (de la nueva tabla) está formada por las claves de los lados M y N.
- El asterisco (*) acompañado del atributo indica clave primaria PK, por ejemplo: *Id_Empleado.
- Las claves foráneas FK se especifican en la parte inferior de la tabla.