sql >> Base de Datos >  >> RDS >> Database

El modelo relacional

El modelo relacional es el más popular de los modelos de datos lógicos y es la base de las bases de datos SQL.

El Modelo Relacional se basa en dos conceptos simples:

  • mesas
  • relaciones

El modelo relacional se remonta a 1969 y es obra de Edgar F. Codd, un informático inglés. Aunque como programadores informáticos estamos acostumbrados a mirar con curiosidad cosas nuevas y brillantes, definitivamente vale la pena estudiar una tecnología que puede ser central en todo lo relacionado con las computadoras durante 50 años.

El hecho de que el modelo esté basado en tablas hace que su uso sea muy intuitivo, ya que estamos acostumbrados a usar tablas para organizar las cosas. Piense en una hoja de cálculo de Excel, por ejemplo.

Con bases de datos basadas en SQL, como PostgreSQL, Oracle, MySQL, SQLite y MS SQL Server, y muchas otras, los datos analizados con el modelo ER se pueden modelar con el modelo relacional y transformarse casi inmediatamente en un formato de base de datos SQL, que puede considerarse una implementación del mundo real del modelo relacional, pero hablaremos de esto en otras publicaciones.

En esta publicación quiero hablar sobre la teoría y los conceptos en los que se basa el modelo relacional, no expresado en términos matemáticos sino lo que significa en la práctica.

Si eres estudiante, es posible que descubras que lo que escribo aquí no es lo que está escrito en tu libro de texto, pero tal vez puedas leerlo más fácilmente para comprender los conceptos más formales expresados ​​en tu material de aprendizaje.

Mesas

En un modelo relacional, una tabla es una colección de artículos.

Está organizado en filas y columnas:

Nombre Edad
Flavio 36
Entendido 7
Síd 6

Tuplas

Cada entrada de la tabla se denomina tupla . También puede utilizar los términos registro o fila .

Una tupla representa una fila de la tabla, así:

Flavio 36

Atributos

Un atributo es un solo elemento en la tupla.

En este ejemplo:

Flavio 36

“Flavio” es un atributo. 36 es otro atributo.

Las tuplas son únicas

Cada tupla de la tabla es única.

En el modelo relacional, no podemos tener datos duplicados, lo que significa que cada fila de la tabla debe ser diferente en al menos un atributo.

La clave de relación

Lo que asegura que una tupla es única es la clave de relación .

La clave es un atributo que debe identificarse de forma única una tupla.

Si la clave de relación es un conjunto de atributos, debe ser no redundante . Esto significa que si eliminamos uno de los atributos de la clave, la clave no puede garantizar su unicidad.

Si se puede determinar más de una clave, una de esas claves se identificará como la clave principal .

Restricción de integridad de clave

Los atributos clave de cualquier tupla de la tabla nunca deben ser nulos , y debe nunca repetir .

Dada una clave, debemos poder señalar una tupla/fila específica sin ambigüedad.

Las restricciones del dominio

Cada atributo tiene reglas sobre qué valor puede contener .

Si decidimos almacenar números, no podemos almacenar cadenas, por ejemplo. Y podríamos decidir no almacenar cadenas de más de 10 caracteres para los nombres.

También podemos llamar a este tipo .

La restricción de integridad referencial

Si una tabla contiene una referencia a una tabla secundaria u otras tuplas en la misma tabla, entonces debemos cumplir con las reglas que evitan que la referencia se rompa.

En particular, debemos evitar romper la referencia por:

  • evitando borrar o editar la clave primaria del registro al que apuntamos, en la otra tabla.
  • evite insertar un nuevo registro con una clave inexistente para señalar en la otra tabla.
  • evite cambiar la clave del registro al que apuntamos, sin asegurarse de que la nueva clave existe en la otra tabla.

Un DBMS (Sistema de gestión de base de datos) implementará medidas para ayudarnos a implementar la integridad referencial.