Un modelo de datos sirve como instrumento de abstracción entre cualquier usuario y las características físicas de una base de datos
Formalmente, un modelo de datos es un conjunto de conceptos que sirven para describir la estructura de una base de datos, incluyendo las relaciones entre los datos así como las restricciones que deben cumplirse sobre ellos y las operaciones que se pueden realizar
Aunque hay distintos modelos de datos en uso actualmente (jerárquico, orientado a objetos, etc.) nos vamos a enfocar únicamente en el modelo relacional
La descripción específica, y completa, de una base de datos a través de un modelo de datos se conoce como el esquema de la base de datos
La descripción específica, y completa, de una base de datos a través de un modelo de datos se conoce como el esquema de la base de datos
El modelo relacional tiene su base en el concepto matemático de relación y tiene su origen conceptual en la teoría de conjuntos y la lógica de predicados
Bajo este modelo, podemos ver una relación como una tabla con columnas y filas
Un atributo es el nombre de una columna de una relación
Por decirlo de una forma simple, la relación se representa como una tabla cuyas filas corresponden a registros individuales y los atributos de éstos son las columnas
Al conjunto de valores aceptables de uno o varios atributos se le conoce como dominio y es lo que permite que podamos definir el significado y la fuente de los valores que los atributos pueden tomar
Una fila de una relación es una tupla
El grado de una relación es igual al número de atributos que contiene la relación
La cardinalidad de una relación es igual al número de tuplas que contiene
Una relación normalizada es cualquier relación en la que en la intersección de cada tupla con cada atributo de la misma hay un sólo valor
Formalmente, una relación R definida sobre un conjunto de dominios D1, D2, ..., Dn está formada de:
Una superclave es un atributo, o conjunto de atributos, que identifican de modo único a los atributos de una relación
Una clave candidata es una superclave que carece de subconjuntos propios que también sean superclaves
Una clave compuesta es una clave candidata que está formada por más de un atributo
Una clave primaria es aquella clave candidata que se elige para identificar a cada tupla de manera unívoca
Una clave alternativa es toda aquella clave candidata que no es la clave primaria
Una clave ajena (o foránea) es un atributo o conjunto de atributos de una relación cuyos valores corresponden a los de la clave primaria de alguna otra relación
Cuando el valor de algún atributo es desconocido, o inexistente, se dice que es nulo
No es equivalente al valor numérico 0 o a una cadena vacía
No todos los SGBD soportan el valor nulo o lo tratan igual
Hay dos reglas de integridad que deben cumplirse en todo momento:
Hay dos reglas de integridad que deben cumplirse en todo momento:
Cualquier otra restricción que sea necesaria, dependiendo de las operaciones específicas al dominio de conocimiento y operaciones relacionados a la base de datos forma parte del conjunto de las reglas de negocio de la misma
Algunas pueden ser implementadas a nivel del DBMS y otras tienen que ser implementadas en la capa de aplicación
Ninguno de los atributos que componen la clave primaria puede ser nulo