Diseño de bases de datos relacionales
Las doce reglas de Codd [1] son un conjunto de trece reglas ( numeradas del cero al doce ) propuestas por Edgar F. Codd , pionero del modelo relacional para bases de datos , diseñadas para definir lo que se requiere de un sistema de gestión de bases de datos para que sea considerado relacional , es decir, un sistema de gestión de bases de datos relacionales (RDBMS). [2] [3] A veces se las denomina "los Doce Mandamientos de Codd". [4]
Historia
Codd estableció originalmente las reglas en 1970 y las desarrolló aún más en un artículo de conferencia de 1974. [5] Su objetivo era evitar que la visión de la base de datos relacional original se diluyera, ya que los proveedores de bases de datos se apresuraron a principios de la década de 1980 para reempaquetar los productos existentes con una apariencia relacional. [ cita requerida ] La regla 12 fue diseñada particularmente para contrarrestar tal posicionamiento. [ cita requerida ]
Mientras que en 1999 un libro de texto afirmaba que "hoy en día, la mayoría de los RDBMS... pasan la prueba", [5] otro en 2007 sugería que "ningún sistema de base de datos cumple con las doce reglas". [6] El propio Codd, en su libro "El modelo relacional para la gestión de bases de datos: versión 2", reconoció que si bien su conjunto original de 12 reglas se puede utilizar para distinciones generales, las 333 características de su modelo relacional versión 2 (RM/V2) son necesarias para distinciones de un grano más fino. [7]
Normas
Regla 0: La regla fundamental: Cualquier sistema que se anuncie o afirme ser un sistema de gestión de bases de datos relacionales debe ser capaz de gestionar bases de datos completamente 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 se representa explícitamente en el nivel lógico y exactamente de una manera: mediante valores en tablas.
Regla 2: La regla del acceso garantizado :
- Se garantiza que cada dato (valor atómico) en una base de datos relacional sea lógicamente accesible recurriendo a una combinación de nombre de tabla, valor de clave principal y nombre de columna.
Regla 3: Tratamiento sistemático de valores nulos :
- Los valores nulos (distintos de una cadena de caracteres vacía o una cadena de caracteres en blanco y distintos de cero o cualquier otro número) se admiten en DBMS totalmente relacionales para representar información faltante e información inaplicable de manera sistemática, independientemente del tipo de datos.
Regla 4: Catálogo dinámico en línea basado en el modelo relacional :
- La descripción de la base de datos se representa a nivel lógico de la misma manera que los datos ordinarios, de modo que los usuarios autorizados pueden aplicar a su interrogación el mismo lenguaje relacional que a los datos regulares.
Regla 5: La regla del sublenguaje de datos completos :
- Un sistema relacional puede admitir varios lenguajes y varios modos de uso de la terminal (por ejemplo, el modo de rellenar espacios en blanco). Sin embargo, debe haber al menos un lenguaje cuyas instrucciones se puedan expresar, mediante una sintaxis bien definida, como cadenas de caracteres y que sea completo en cuanto a la compatibilidad con todos los elementos siguientes:
- Definición de datos.
- Ver definición.
- Manipulación de datos (interactiva y por programa).
- Restricciones de integridad.
- Autorización.
- Límites de transacción (inicio, confirmación y reversión).
Regla 6: La regla de actualización de la vista :
- Todas las vistas que teóricamente son actualizables también lo son por el sistema.
Regla 7: Regla de operaciones relacionales / Posible para 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 operando 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 de la terminal permanecen lógicamente intactos siempre que se realicen 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 de la terminal permanecen lógicamente intactos cuando se realizan en las tablas base cambios que preservan la información de cualquier tipo y que teóricamente permiten la integridad de la información.
Regla 10: Integridad e independencia :
- Las restricciones de integridad específicas de una base de datos relacional particular deben poder definirse en el sublenguaje de datos relacionales y almacenarse en el catálogo, no en los programas de aplicación.
Regla 11: Independencia de la distribución :
- El usuario final no debe poder ver que los datos están distribuidos en varias ubicaciones. Los usuarios siempre deben tener la impresión de que los datos están ubicados en un solo sitio.
Regla 12: La regla de no subversión :
- Si un sistema relacional tiene un lenguaje de bajo nivel (un solo registro a la vez), ese nivel bajo no se puede usar para subvertir o eludir las reglas y restricciones de integridad expresadas en el lenguaje relacional de nivel superior (múltiples registros a la vez).
Véase también
Referencias
- ^ "Las 12 reglas de Codd". RelDB.org. 2019-06-30 . Consultado el 14 de agosto de 2020 .
- ^ Codd, Edgar Frank (14 de octubre de 1985), "¿Su DBMS es realmente relacional?", Computerworld.
- ^ Codd, Edgar Frank (21 de octubre de 1985), "¿Su sistema de gestión de bases de datos se rige por las reglas?", Computerworld.
- ^ Cowley, Stewart (2017). El hombre frente al Big Data: los datos cotidianos explicados. ISBN 9781781317563. Recuperado el 22 de enero de 2022 .
- ^ ab Kline, Kevin; Gould, Lee; Zanevsky, Andrew (1999). Programación Transact-SQL: cubre Microsoft SQL Server 6.5/7.0 y Sybase Adaptive Server 11.5. ISBN 9781565924017. Recuperado el 22 de enero de 2022 .
- ^ Hess, Kenneth (2007). Microsoft Office Access 2007: La línea L, la línea exprés hacia el aprendizaje. ISBN 9780470107904. Recuperado el 22 de enero de 2022 .
- ^ Codd, Edgar F. (1990). El modelo relacional para la gestión de bases de datos: versión 2. Addison-Wesley Longman Publishing Co., Inc. ISBN 9780201141924.
Lectura adicional
- Codd, Edgar F. (1990). El modelo relacional para la gestión de bases de datos: versión 2. Addison-Wesley. ISBN 9780201141924.
- Harrington, Jan L. (2002). "Las reglas de Codd". Explicación clara del diseño de bases de datos relacionales . Serie Morgan Kaufmann sobre sistemas de gestión de datos (2.ª ed.). Morgan Kaufmann. ISBN 9781558608207.
- Krishna, S. (1992). "Criterios para evaluar sistemas de bases de datos relacionales". Introducción a los sistemas de bases de datos y bases de conocimiento . Ciencias de la computación. Vol. 28. World Scientific. págs. 91 y siguientes. ISBN 9789810206192.