Forma normal de clave de dominio en DBMS – Part 1

Prerrequisitos – Formas normales , 4ta y 5ta forma normal , encontrar la forma normal más alta de una relación
Es básicamente un proceso en la base de datos para organizar los datos de manera eficiente. Básicamente, hay dos objetivos al hacer la normalización, estos son los siguientes:

  1. Eliminar datos repetidos o en palabras simples podemos decir eliminar datos redundantes.
  2. El segundo es asegurarse de que habrá dependencias de datos.

Los pasos se pueden hacer para lograr la normalización:

  1. Eliminar grupos repetidos o para eliminar grupos repetidos.
  2. Elimine o elimine los datos repetidos.
  3. Elimine aquellas columnas que no dependan de la clave.
  4. La relación múltiple debe aislarse de forma independiente.
  5. Aislar relaciones múltiples relacionadas semánticamente

Hay varios tipos de formas normales, una forma normal con un número más bajo siempre es más débil que la forma normal con un número más alto. Por ejemplo, la primera forma normal es más débil que la segunda forma normal. Estos son: 1º, 2º, 3º, forma normal de código Boyce, 4º, 5º y forma normal de clave de dominio. Pero, en este artículo, solo discutiremos sobre la forma normal de clave de dominio.

Forma normal de clave de dominio (DKNF):
no existe una regla estricta y rápida para definir la forma normal hasta 5NF. Históricamente, el proceso de normalización y el proceso de descubrimiento de dependencias indeseables se llevaron a cabo a través de 5NF, pero ha sido posible definir la forma normal más estricta que tiene en cuenta el tipo adicional de dependencias y restricciones.

La idea básica detrás de DKNF es especificar la forma normal que tenga en cuenta todas las dependencias y restricciones posibles.
En palabras simples, podemos decir que DKNF es una forma normal utilizada en la normalización de bases de datos que requiere que la base de datos no contenga más restricciones que restricciones de dominio y restricciones clave.

En otras palabras, se dice que un esquema de relación está en DKNF solo si todas las restricciones y dependencias que deben mantenerse en el estado de relación válido pueden aplicarse simplemente aplicando las restricciones de dominio y las restricciones clave en la relación. Para una relación en DKNF, se vuelve muy sencillo hacer cumplir todas las restricciones de la base de datos simplemente comprobando que cada valor de atributo es una tupla del dominio apropiado y que se aplican todas las restricciones clave.

Las razones para usar DKNF son las siguientes:

  1. Para evitar restricciones generales en la base de datos que no sean restricciones clave claras.
  2. La mayoría de las bases de datos pueden probar o verificar fácilmente las restricciones clave de los atributos.

Sin embargo, debido a la dificultad de incluir restricciones complejas en una relación DKNF, su utilidad práctica es limitada, lo que significa que no tienen un uso práctico, ya que puede ser bastante difícil especificar restricciones de integridad generales.

Entendamos esto tomando un ejemplo:

Ejemplo:
Considere las relaciones COCHE (MARCA, vin#) y FABRICACIÓN (vin#, país),
donde vin# representa el número de identificación del vehículo ‘país’ representa el nombre del país donde se fabrica.

Una restricción general puede ser de la siguiente forma:

Si la MARCA es ‘HONDA’ o ‘MARUTI’, el primer carácter del número de serie es una ‘B’ Si el país de fabricación es ‘INDIA’
Si la MARCA es ‘FORD’ o ‘ACCURA’, el segundo carácter de el vin# es una ‘B” si el país de fabricación es ‘INDIA’.

No existe una forma simplificada de representar tales restricciones salvo escribir un procedimiento o una afirmación general para probarlas. Por lo tanto, tal procedimiento necesita hacer cumplir una restricción de integridad apropiada. Sin embargo, transformar una forma normal superior en una forma normal de dominio/clave no siempre es una transformación que preserve las dependencias y no siempre es posible.

Publicación traducida automáticamente

Artículo escrito por Akashkumar17 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *