Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/10/2010, 13:22
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: dobles llaves primarias a una tabla?

Cita:
Buenas a todos, siempre he visto que al realizar modelos de base de datos con la Herramienta CASE Power Designer, ésta crea un una tabla hija (producto de una relacion muchos a muchos), en la cual se tienen las Primary Keys de cada una de las tablas, y esos dos campos en la nueva tabla, quedan ambos definidos como llaves primarias, porque suele suceder esto?
En el modelo relacional, toda tabla debe poseer una clave primaria (la expresión "llave" es una traducción demasiado literal para mi gusto, y no expresa bien la idea), es decir, un campo o conjunto de campos que identifique unívocamente un sólo registro en la tabla.
Pero en el diseño de las bases de datos se dan dos tipos basicos de relaciones: las dadas por aquellas cuya identidad y existencia dependen de otra, y las que solamente vinculan dos tablas, sin que su identidad sea determinada por esa clave foránea.
En esencia, se rtata de aquellas tablas que heredan una clave, pero como la relación es 1:N requieren de otro campo más como discriminante de su identidad. Así, la clave primaria de esas tablas se crean como claves compuestas por más de un campo.
Las relaciones N:N son un caso especial de estas claves compuestas. SOn tablas que no existen en el diagrama Entidad-Relación, sino que aparecen en él como relaciones N:N. Esa relación determina la existencia de una tabla física donde la clave primaria está constituida por la PK de cada una de las tablas vinculadas, pudiendo agregarse un discriminante si y sólo si el caso lo requiere.

Lo que no existe es una tabla con más de una PK. Eso es un error de interpretación. Una tabla sólo puede tener una PK por definición del paradigma y porque los DBMS usan la PK para mantener el ordenamiento físico de la tabla... y una tabla no puede ordenarse físicamente de dos formas distintas ¿no crees?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)