Ver Mensaje Individual
  #8 (permalink)  
Antiguo 10/06/2008, 11:53
Avatar de matanga
matanga
 
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Respuesta: Llaves compuestas?? Cuando utilizarlas?

Hola,

Espero no llegar muy tarde para agregar un pequeño comentario, este debate lleva tantos años como las bases de datos relacionales, natural key vs surrogate key.

Como bien se ha dicho, es un tema de gustos y diseños, hay quienes son fanaticos religiosos de las natural key (ids descriptivos) que prefieren crear una pk compuesta de n campos en vez de una primary key surrogate o auto-numerico, o secuencia, etc. Y por supuesto estan los opuestos, que aun cuando la primary key es obvia, siempre crean un campo mas llamado Id.

La realidad es que hay que evaluar cada caso en particular, dado que hay pros y contras, independientemente de la cantidad de campos que componen la primary key, por ejemplo

Una tabla de personas, donde unos de los campos es el DNI, por definicion el DNI es unico e inmutable (no cambia), un pro puede ser que me evito JOINS cuando consulto las tablas hijos, dado que ya tengo el DNI (algo parecido a desnormalizacion), y una contra puede ser que el campo DNI ocupa mas espacio que un auto-numerico, secuencia, etc.

En fin, despues de toda esta verborragia, lo que queria comentar era que las primary key compuestas son utiles cuando se prefieren las natural key sobre las surrogate key.

Saludos