1. Lenguaje de definición de datos (DDL):
* Define el esquema: Esto incluye crear tablas, definir tipos de datos para columnas, especificar restricciones (claves primarias, claves extranjeras, etc.) y establecer relaciones entre tablas.
* Haga cumplir las restricciones: El DDL garantiza que los datos se ajusten a las reglas de esquema predefinidas. Por ejemplo, si una columna se define como no nula, el DBMS no le permitirá insertar o actualizar una fila sin un valor en esa columna.
2. Lenguaje de manipulación de datos (DML):
* administra datos: Los comandos DML (insertar, actualizar, eliminar) se utilizan para modificar los datos en la base de datos.
* Comprueba restricciones: El componente DML interactúa con las restricciones definidas por DDL para verificar la integridad de los datos durante las operaciones de modificación de datos.
3. Sistema de gestión de transacciones:
* Asegura la atomicidad, la consistencia, el aislamiento y la durabilidad (propiedades ácidas): Esto asegura que las transacciones se ejecuten de manera total y precisa.
* maneja el control de concurrencia: Esto evita conflictos cuando múltiples usuarios acceden y modifican los datos simultáneamente.
4. Diccionario de datos:
* almacena metadatos: La información sobre la estructura de la base de datos (tablas, columnas, restricciones, relaciones) se almacena en el diccionario de datos.
* utilizado por otros componentes: El DDL, DML y Optimizador de consultas dependen del diccionario de datos para comprender la estructura de la base de datos.
5. Optimizador de consultas:
* genera planes de ejecución eficientes: Este componente utiliza la información en el diccionario de datos para optimizar la ejecución de la consulta, potencialmente imponiendo la integridad de los datos a través de las transformaciones de consultas.
En resumen, la integridad de la estructura de datos se mantiene a través de una combinación de DDL, DML, gestión de transacciones, el diccionario de datos y el optimizador de la consulta. Estos componentes trabajan juntos para garantizar que la base de datos se adhiera a las reglas predefinidas y que los datos sean consistentes y precisos.