Las 12 reglas de Codd

Las doce reglas de Codd son un conjunto de trece reglas (numeradas del cero al doce) propuestas por Edgar F. Codd, pionero del modelo relacional para bases de datos.

REGLAS

Regla 0: La regla fundamental:

Para cualquier sistema anunciado como, o afirmado ser, un sistema de gestión de base de datos relacional, ese sistema debe ser capaz de gestionar completamente las bases de datos a través de sus capacidades relacionales.

Regla 1: La regla de la información:

Toda la información en una base de datos relacional está representada explícitamente a nivel lógico y de una manera exacta – por valores en tablas.

Regla 2: La regla de acceso garantizado:

Cada datum (valor atómico) en una base de datos relacional está garantizada a ser lógicamente accesible recurriendo a una combinación de nombre de tabla, valor clave primario y nombre de columna.

Regla 3: Tratamiento sistemático de valores nulos:

Los valores nulos (distintos de la cadena de caracteres vacíos o de una cadena de caracteres en blanco y distintos de cero o de cualquier otro número) se soportan en DBMS totalmente relacionales para representar la información desaparecida e información inaplicable de manera sistemática, independiente del tipo de datos.

Regla 4: Catálogo online dinámico basado en el modelo relacional:

La descripción de la base de datos está representada a nivel lógico de la misma manera que los datos ordinarios, de modo que los usuarios autorizados puedan aplicar el mismo idioma relacional a su interrogatorio que se aplican a los datos regulares.

Regla 5: La regla integral del sublenguaje de datos:

Un sistema relacional puede apoyar varios idiomas y varios modos de uso terminal (por ejemplo, el modo relleno en los bloques). Sin embargo, debe haber por lo menos un idioma cuyas declaraciones son expresivas

Definición de datos.

Ver definición.

Manipulación de datos (interactivo y por programa).

Limitaciones de integridad.

Autorización.

Límites de transacción (principio, compromiso y retroceso).

Regla 6: La regla de actualización de vistas:

Todas las vistas que son teóricamente resistentes también son actualizadas por el sistema.

Regla 7: Regla de operaciones relacionales / Posible inserción, actualización y eliminación de alto nivel:

La capacidad de manejar una relación base o una relación derivada como un solo operado se aplica no sólo a la recuperación de datos sino también a la inserción, actualización y eliminación de datos.

Regla 8: Independencia de los datos físicos:

Los programas de aplicación y las actividades terminales siguen sin afectar lógicamente cuando se producen cambios en las representaciones de almacenamiento o en los métodos de acceso.

Regla 9: Independencia lógica de los datos:

Los programas de aplicación y las actividades terminales siguen sin tener en cuenta lógicamente cuando se realizan cambios en la conservación de la información de cualquier tipo que teóricamente permiten el deterioro de las tablas base.

Regla 10: Independencia de integridad:

Las limitaciones de integridad específicas a una base de datos relacionales en particular deben ser definibles en la sublanguage de datos relacionales y almacenables en el catálogo, no en los programas de aplicación.

Regla 11: Independencia de distribución:

El usuario final no debe poder ver que los datos se distribuyen en varios lugares. Los usuarios siempre deben tener la impresión de que los datos se encuentran en un solo sitio.

Regla 12: La regla de no subversión:

Si un sistema relacional tiene un lenguaje de bajo nivel (single-record-at-a-time), ese bajo nivel no puede utilizarse para subvertir o evitar las reglas y limitaciones de integridad expresadas en el lenguaje relacional de alto nivel (multiple-records-at-a-time).