CURSO de DISEÑO de BASE DE DATOS #12 📚 SEGUNDA FORMA NORMAL

yacklyon
31 Jul 201905:48

Summary

TLDREl curso de diseño de bases de datos continúa con la segunda forma normal (2NF), la cual se aplica solo si la tabla ya está en primera forma normal (1NF). Se enfatiza la importancia de que todos los atributos no clave dependan completamente de cualquier clave candidata para evitar redundancias. Se explican los elementos de dependencia y cómo identificar columnas que dependen de otras. A través de un ejemplo, se muestra cómo dividir una tabla grande en varias tablas más pequeñas para cumplir con la 2NF, manteniendo las relaciones apropiadas entre ellas y eliminando datos duplicados. Esto ayuda a normalizar y organizar mejor la información.

Takeaways

  • 📚 Para que una tabla esté en segunda forma normal, debe estar previamente en primera forma normal.
  • 🔑 Todos los atributos no clave deben depender completamente de cualquier clave candidata.
  • 🚫 Se debe evitar la redundancia al mezclar propiedades de dos entidades en la misma relación.
  • 🔍 Se deben identificar las dependencias de las columnas entre sí para asegurar que las tablas están en segunda forma normal.
  • 🧩 Se debe revisar lógicamente los elementos dentro de una tabla para determinar sus dependencias.
  • 🔑📈 Una columna que no es clave primaria puede tener elementos que dependen de ella, como se ve en el ejemplo de la caja y la marca.
  • 📊 Se pueden encontrar tres tipos de relaciones en una tabla: dependencia de la clave primaria, dependencia de una columna no clave primaria y dependencia de ambas.
  • 📑 Es necesario dividir la tabla en varias tablas para cumplir con la segunda forma normal, manteniendo las relaciones entre ellas.
  • 🔗 Las tablas resultantes deben estar relacionadas para reflejar la conexión original de la tabla grande.
  • 🗂️ Al dividir la tabla en varias, se reduce la redundancia y se mejora la organización de los datos.

Q & A

  • ¿Qué es la segunda forma normal en el diseño de bases de datos?

    -La segunda forma normal (2NF) es un nivel de normalización en el diseño de bases de datos que elimina dependencias parciales. Esto significa que todos los atributos no clave deben depender completamente de cualquier clave candidata, evitando así redundancias y mejorando la integridad de los datos.

  • ¿Cuáles son los requisitos para que una tabla esté en segunda forma normal?

    -Para que una tabla esté en segunda forma normal, debe cumplir dos requisitos: 1) Estar en primera forma normal, lo que significa que no deben existir columnas que contengan datos repetitivos o proyectados. 2) Todos los atributos no clave deben depender completamente de la clave primaria, no solo parcialmente.

  • ¿Qué es una dependencia incompleta y cómo afecta la segunda forma normal?

    -Una dependencia incompleta ocurre cuando un atributo no clave no depende de toda la clave primaria, sino solo de una parte de ella. Esto va en contra de la segunda forma normal, ya que se busca que todos los atributos no clave dependan completamente de la clave primaria.

  • ¿Cómo se identifican los elementos de dependencia en una tabla?

    -Los elementos de dependencia en una tabla se identifican observando qué columnas dependen de otras. Por ejemplo, si el valor de una columna varía según el valor de otra, existe una dependencia. En la normalización, se busca que solo la clave primaria tenga dependencias hacia otros atributos.

  • ¿Qué hace falta revisar en una tabla para asegurarse de que cumple con la segunda forma normal?

    -Para asegurarse de que una tabla cumple con la segunda forma normal, se debe revisar que todos los atributos no clave estén completamente dependiendo de la clave primaria y que no haya dependencias de atributos no clave con partes de la clave primaria o con atributos no clave.

  • ¿Qué es una clave candidata y cómo se relaciona con la segunda forma normal?

    -Una clave candidata es un conjunto de atributos que puede identificar de manera única a cada registro en una tabla. En la segunda forma normal, todos los atributos no clave deben depender completamente de la clave candidata, lo que ayuda a evitar redundancias y mantener la integridad de los datos.

  • ¿Cómo se aborda la situación cuando una columna no es clave primaria pero tiene atributos que dependen de ella?

    -Cuando una columna no es clave primaria pero tiene atributos que dependen de ella, se debe dividir la tabla en varias tablas para cumplir con la segunda forma normal. Cada nueva tabla se relacionará con la clave primaria de la tabla original, manteniendo la integridad y evitando dependencias parciales.

  • ¿Cuál es el objetivo de dividir una tabla en varias tablas según la segunda forma normal?

    -El objetivo de dividir una tabla en varias tablas según la segunda forma normal es eliminar dependencias parciales y redundancias, asegurando que los datos estén bien organizados y que cada tabla represente una relación lógica y única dentro de la base de datos.

  • ¿Cómo se relacionan las tablas creadas después de normalizar según la segunda forma normal?

    -Las tablas creadas después de normalizar según la segunda forma normal se relacionan a través de la clave primaria y, en algunos casos, de la clave candidata. Esto permite mantener la integridad referencial y permitir la búsqueda eficiente de información entre las tablas.

  • ¿Qué sucede con los datos repetidos cuando se aplica la segunda forma normal?

    -Cuando se aplica la segunda forma normal, se identifican los datos repetidos y se eliminan para evitar redundancias. Se crean nuevas tablas que contienen únicamente los datos necesarios, manteniendo la relación entre ellas a través de claves primarias y candidatas.

Outlines

00:00

📊 Introducción a la Segunda Forma Normal en Diseño de Bases de Datos

En este párrafo, se introduce el concepto de la Segunda Forma Normal (2NF) en el diseño de bases de datos. Se enfatiza que para que una tabla esté en 2NF, debe estar primero en Primera Forma Normal (1NF). Además, se explica que todos los atributos no clave deben depender completamente de cualquier clave candidata. Se destaca la importancia de evitar redundancias causadas por mezclar propiedades de dos entidades diferentes en la misma relación. Finalmente, se menciona la relación entre dependencias incompletas y cómo afectan la estructura de la tabla.

05:01

🔍 Ejemplo de Dependencias en una Tabla

Este párrafo presenta un ejemplo de una tabla que ya está en 1NF, la cual contiene columnas como código, producto, caja, marca, cantidad, costo y total. Se explica cómo algunas columnas dependen directamente de otras, como el producto y el costo que dependen del código, mientras que la marca depende de la caja. Se introducen tres tipos de dependencias: las columnas que dependen solo del código, las que dependen solo de la caja y las que dependen tanto del código como de la caja, como la cantidad y el total.

📋 Creación de Tablas Basadas en Dependencias

En este párrafo, se describe el proceso de dividir la tabla original en tres tablas más pequeñas, basadas en las dependencias encontradas. Se crean nuevas tablas: una que contiene la relación entre el código, el producto y el costo, otra que agrupa caja y marca, y una tercera que conecta el código, la caja, la cantidad y el total. Se resalta que esta división ayuda a normalizar los datos y a evitar redundancias, pero se debe mantener la relación entre las tablas, ya que todas provienen de una sola tabla.

🔗 Conclusión: Manteniendo la Relación entre Tablas Normalizadas

Este párrafo finaliza explicando que, aunque las tablas se dividen para normalizar los datos, deben seguir conectadas para mantener la integridad de la información. Además, se señala que el proceso de normalización también ayuda a identificar y eliminar datos repetidos, simplificando la estructura. Finalmente, se hace un adelanto hacia la Tercera Forma Normal, sugiriendo que se seguirá trabajando en la optimización de los datos.

Mindmap

Keywords

💡Segunda Forma Normal

La Segunda Forma Normal (2NF) es un concepto fundamental en el diseño de bases de datos relacionales, que busca eliminar redundancia y dependencias parciales en las tablas. Se alcanza cuando todas las columnas no clave dependen completamente de cualquier clave candidata. En el guion, se menciona que para estar en 2NF, una tabla debe primero estar en Primera Forma Normal (1NF) y que se debe evitar la mezcla de propiedades de dos entidades en una misma relación, lo cual es un paso hacia la normalización de datos.

💡Primera Forma Normal

La Primera Forma Normal (1NF) es el primer paso en la normalización de bases de datos, donde se asegura que cada columna tenga un solo valor y que no haya listas o rangos de valores en las filas. Es una condición previa para alcanzar la 2NF, como se destaca en el guion, ya que se necesita que la tabla esté en 1NF antes de aplicar la 2NF.

💡Clave Candidata

Una Clave Candidata es un conjunto de columnas que puede identificar de forma única a cada fila en una tabla. Es fundamental para la normalización ya que las columnas no clave deben depender completamente de la clave candidata. En el guion, se menciona que los atributos no clave deben depender completamente de cualquier clave candidata para cumplir con la 2NF.

💡Dependencia Parcial

La Dependencia Parcial se refiere a una situación en la que algunas columnas no clave dependen solo de parte de la clave candidata, lo que va en contra de los principios de la 2NF. El guion menciona que para alcanzar la 2NF, es necesario evitar estas dependencias incompletas y asegurar que todas las columnas no clave dependan completamente de la clave candidata.

💡Redundancia

La Redundancia en un contexto de bases de datos se refiere a la repetición de información en diferentes filas o tablas, lo que puede llevar a inconsistencias y dificultades en la mantenibilidad. El guion enfatiza la importancia de evitar la redundancia al mezclar propiedades de diferentes entidades en una relación, ya que esto va en contra de la normalización y la 2NF.

💡Llave Primaria

La Llave Primaria es un conjunto de columnas que identifican de manera única a cada registro en una tabla. Es crucial en la normalización ya que actúa como una base para definir las dependencias de otras columnas. En el guion, se utiliza el ejemplo de un código de producto que es una llave primaria y a partir de la cual otras columnas como el producto y el costo dependen.

💡Columna No Clave

Las Columnas No Clave son aquellas que no forman parte de la clave primaria de una tabla y, por lo tanto, no son necesarias para identificar de forma única a cada registro. En el guion, se discute cómo estas columnas deben depender completamente de la clave candidata para cumplir con la 2NF, evitando así dependencias parciales.

💡División de Tablas

La División de Tablas es un proceso en el diseño de bases de datos donde se separan las columnas de una tabla en varias tablas para cumplir con los principios de normalización. El guion describe cómo, para alcanzar la 2NF, se identifican las dependencias y se crean nuevas tablas para acomodar estas dependencias, mejorando así la organización y reduciendo la redundancia.

💡Relación de Tablas

La Relación de Tablas es la conexión lógica entre diferentes tablas en una base de datos, que permite mantener la integridad y la consistencia de los datos. A pesar de dividir una tabla en varias para alcanzar la 2NF, como se menciona en el guion, es necesario mantener una relación entre estas tablas a través de claves foráneas para preservar la conexión original.

💡Datos Repetidos

Datos Repetidos son instancias en las que la misma información aparece en múltiples lugares en una base de datos, lo que puede causar problemas de consistencia y mantenimiento. El guion destaca la importancia de identificar y eliminar datos repetidos al normalizar tablas, asegurando que la información se mantenga única y se pueda actualizar de manera eficiente.

Highlights

La segunda forma normal es crucial para la base de datos y es una extensión de la primera forma normal.

Todos los atributos no clave deben depender completamente de cualquier clave candidata.

Es necesario evitar redundancias al mezclar propiedades de dos entidades en una relación.

Se debe entender la dependencia de columnas entre sí para aplicar la segunda forma normal correctamente.

La llave primaria es fundamental para determinar las dependencias de otras columnas.

El ejemplo de la tabla con código, producto, caja, marca, cantidad, costo y total ayuda a visualizar la dependencia.

La columna del producto y el costo dependen del código, lo que es una relación directa con la llave primaria.

La marca depende de la caja, lo que muestra una dependencia que no es de la llave primaria.

La cantidad y el total dependen tanto del código como de la caja, lo que implica una dependencia compleja.

Se deben crear tablas separadas para cada tipo de dependencia encontrada en la tabla original.

La tabla original, aunque grande, estaba en primera forma normal, lo que es un requisito previo para la segunda.

Las tablas resultantes deben estar relacionadas para mantener la integridad de los datos.

La normalización ayuda a evitar datos repetidos y a simplificar la estructura de la base de datos.

La segunda forma normal busca eliminar dependencias parciales y mejorar la organización de los datos.

El proceso de normalización es esencial para el diseño de bases de datos eficientes y limpias.

La próxima lección se centrará en la tercera forma normal, que es otra etapa en la normalización de bases de datos.

Transcripts

play00:00

[Música]

play00:05

bien continuando con el curso de diseño

play00:08

de base de datos

play00:09

hoy tocando la segunda forma normal

play00:13

bien vale la pena recalcar para que una

play00:15

tabla se considere que está en segunda

play00:17

forma normal o que quiere convertirse

play00:19

tiene que estar obviamente en primera

play00:22

forma normal si no está en primera forma

play00:24

normal entonces no podemos hablar de la

play00:26

segunda forma normal obviamente y que

play00:29

todos los atributos no clave dependan

play00:32

por completo de cualquier clave

play00:34

candidata a qué me refiero con eso vale

play00:37

la pena resaltar que hay que evitar

play00:39

redundancias por mezcla de propiedades

play00:41

de dos entidades en la misma relación

play00:44

obviamente cuando existen dependencias

play00:47

incompletas esto parece que fuese

play00:50

escrito en chino verdad entonces qué te

play00:52

parece si lo relacionamos de esa manera

play00:55

para poder entender mejor la segunda

play00:57

forma normal acá tengo un pequeño

play00:59

ejemplo de hecho tengo una gran tabla

play01:01

primeramente tenemos un código un

play01:03

producto una caja una marca la cantidad

play01:05

el costo y el total obviamente esta

play01:08

tabla ya está en primera forma normal y

play01:10

para este ejemplo nos sirve bastante el

play01:12

detalle que tiene esta tabla en su

play01:15

primera forma ok bien acá vamos a

play01:17

encontrar primeramente como se mencionó

play01:19

los elementos de dependencia a qué me

play01:22

refiero con elementos de dependencia

play01:24

cuando vemos que columnas dependen de

play01:27

otras columnas lo general es que suceda

play01:29

esto que acá como de costumbre tenemos

play01:32

una llave primaria sería el código un

play01:34

código que no se repite un elemento que

play01:36

asigna diferentes tablas diferentes

play01:39

significados y diferente valor entonces

play01:42

a este elemento a esta columna vamos a

play01:45

ver que hay elementos que dependen

play01:47

simplemente del código a qué me refiero

play01:50

con eso que vamos a encontrar columnas

play01:53

como es el caso del producto y el costo

play01:55

tenemos que tener una revisión

play01:58

especialmente lógica de los elementos

play02:00

que tenemos dentro de una tabla

play02:02

en este caso yo visualmente puedo decir

play02:05

que código ok los elementos que dependen

play02:08

de código es la columna del producto y

play02:11

la columna del costo porque sus valores

play02:13

se asigna un código como vemos en el

play02:16

ejemplo del lápiz tiene un código y ese

play02:18

lápiz tiene un precio que entonces la

play02:20

relación que hay entre costo y producto

play02:22

podemos mencionar que simplemente estas

play02:25

dos columnas dependen de código ok y no

play02:28

es la única también vamos a ver algo

play02:30

diferente vamos a ver que hay elementos

play02:32

en este caso como en el tema de la

play02:35

columna caja que no es una llave

play02:38

primaria ojo no es una llave primaria

play02:40

pero hay elementos que dependen de esa

play02:43

columna como es el caso de la marca

play02:46

ok eso es evidente porque dentro de una

play02:50

caja hay diferentes productos pero esos

play02:53

productos pertenecen a una determinada

play02:56

marca que entonces tenemos este tipo de

play02:59

dependencia caja y marca no es la única

play03:02

también vamos a encontrar de esta manera

play03:04

cuando hay elementos que a la vez son

play03:07

llave primaria y elemento o en este caso

play03:09

una columna que no es llave primaria

play03:12

elementos que vemos que también dependen

play03:14

de estos dos como es el caso de la

play03:17

cantidad del producto y el total estos

play03:21

dos elementos la cantidad y el total

play03:24

dependen obviamente del código y de la

play03:27

caja

play03:28

entonces vamos a tener tres tipos de

play03:31

relación en esta tabla el código es

play03:35

básicamente el producto y el costo que

play03:37

dependen de código la marca de depende

play03:39

de caja ok y la cantidad y el total que

play03:42

dependen del código y de la caja que son

play03:45

elementos que están dependiendo entonces

play03:47

que tengo que ser en esta segunda forma

play03:49

normal de estas tres dependencias que

play03:52

hemos encontrado

play03:53

yo debo crear entonces tres tablas de la

play03:56

tabla que tenemos acá

play03:57

ok como lo podemos ver ahora de la

play04:00

dependencia que hay entre producto y

play04:02

costo de código entonces hemos creado

play04:04

una nueva tabla donde vamos a encontrar

play04:06

simplemente código a esta columna vamos

play04:08

a encontrar tanto el producto como el

play04:10

costo de la misma manera vamos a hacer

play04:12

la dependencia que de marca caja okey

play04:15

creando una nueva tabla y también la

play04:18

dependencia que entre la cantidad y el

play04:19

total que depende precisamente del

play04:22

código y de la columna caja

play04:25

y bien en un inicio teníamos esta tabla

play04:28

ok

play04:28

muy grande pero estaba en primera forma

play04:31

normal ojo tiene que estar en primera

play04:33

forma normal

play04:34

si nos no podemos aplicar la segunda ok

play04:37

y bien de esta tremenda tabla lo hemos

play04:39

dividido en tres tablas los cuales nos

play04:41

ayuda bastante a normalizar el proceso

play04:44

de la información pero recordemos que

play04:47

estas tres tablas deben relacionarse

play04:49

porque vienen de una sola tabla no me

play04:51

sirve que estén divididos de esta manera

play04:53

necesito un elemento de conexión que

play04:56

obviamente de esta manera podemos ver

play04:58

donde precisamente se conectan algo

play05:00

parecido a lo que vimos en la primera

play05:01

forma normal pero cuando las cosas se

play05:04

hacen bien tenemos este tipo de relación

play05:07

ok y bien un detalle interesante sobre

play05:10

este tipo de elaboración de tablas es

play05:12

que también podemos encontrar datos

play05:14

repetidos ok al ver que son duplas o

play05:18

filas parecidas lo único que hacemos es

play05:20

simplificar los al final vamos a quedar

play05:23

con lo mismo

play05:24

ok y bien eso sería todo entonces como

play05:27

norma en la segunda forma normal debemos

play05:29

hallar los elementos que dependen de

play05:31

las columnas y dividirlos en tablas para

play05:35

posteriormente tener nuestros datos bien

play05:38

organizados y bien eso sería todo por

play05:41

hoy nos vemos ya en la tercera forma

play05:43

normal

play05:44

usando esta parte de normalización

Rate This

5.0 / 5 (0 votes)

相关标签
Base de DatosNormalizaciónSegunda Forma NormalDiseño de Bases de DatosDependencia de AtributosRedundancia de DatosOrganización de InformaciónDiseño de TablasOptimización de DatosEjemplos Prácticos
您是否需要英文摘要?