[Resuelto] -¿COMO SE DEBE CREAR UNA LLAVE PRIMARIA OPTIMA?

JC

Buenos días estimados, mi consulta es sobre cual sería la manera mas óptima al crear una llave primaria(PK) en las tablas de una base de datos. Me explico, debería manejarse con un solo campo como ID para todas las tablas, o tener varios campos que formen la PK, o tal vez conozcan otra manera mas óptima que hayan visto dentro del rubro. Para esta consulta, tomando como caso una base de datos grande. Saludos.

4respuestas
FO

Los atributos seleccionados como claves primarias deben ser únicos, inalterables y estar siempre presentes (nunca NULL o vacíos).

Cada entidad puede, potencialmente, tener una relación con todas las demás, pero por lo general esas relaciones pueden ser de uno de tres tipos: Relaciones uno a uno, relaciones uno a muchos y relaciones muchos a muchos. Puedes crear también relaciones recursivas y/o redundantes.

La cardinalidad se refiere a la cantidad de elementos que interactúan entre dos tablas relacionadas. Identificar la cardinalidad te ayuda a asegurarte de que has dividido los datos en tablas de la forma más eficiente.

No estamos hablando de optimización, mas bien de funcionalidad. El proceso de diseño de una base de datos no debe tomarse a la ligera. Análisis de requisitos, estructura de datos, creación de relaciones, normalización e integridad de datos. Todo esto aplicable a grande o pequeño, el tamaño de la DB no importa. (Tienden a crecer, que lo sepas)

Espero con todo lo que indico aclarar tus dudas. Agradezco cualquier corrección por error u omisión.

Apuntar también que recién empiezo en serio a trabajar con bases de datos. Gracias a EdTeam por su aportación a consolidar mis conceptos.

Avatar

Muy buena respuesta, pero no le solucionaste la duda a Juan.

Avatar

Siempre recomiendo usar un ID autoincremental para la PK

Avatar

Siempre recomiendo usar un ID autoincremental para la PK

Avatar

Hola Juan, las llaves compuestas generalmente se usan en las tablas intermedias de muchos a muchos ( aunque se le puede asignar una llave primaria unica en vez de la compuesta ), en mi experiencia es mejor trabajar con llaves primarias unicas porque por lo general son más eficientes y no tienen problemas si es que mas adelante quieres trabajar con ORMS. Por ejemplo cuando hacia proyectos de c# en la universidad con entity framework no me detectaba correctamente las llaves compuestas y tenia que generarles una llave primaria unica a esas tablas.

Recuerda iniciar sesión para participar en la comunidad.