sql >> Base de Datos >  >> RDS >> Oracle

¿Hay alguna razón para usar la clave principal y la clave única juntas en el mismo campo?

Para una tabla que resuelve muchos a muchos, sería común tener una clave de dos partes (como lo indica Quassnoi). También es muy probable que necesite índices que admitan el acceso a través de cualquiera de los padres.

Si tiene, por ejemplo, tablas PERSONA, DIRECCIÓN y PERSONA_DIRECCIÓN, su tabla PERSONA_DIRECCIÓN puede tener la clave principal de (PERSON_ID, ADDRESS_ID) y un índice de soporte. También tendría otro índice en (ADDRESS_ID,PERSON_ID), y probablemente lo convertiría en un índice ÚNICO (ya que es una combinación única de campos).

También es posible que su DBA tenga alguna forma particular de generar tablas que comience con un índice ÚNICO en los campos de clave principal seguido de la creación de la restricción PRIMARY KEY. Eso puede aparecer en algunas herramientas GUI en la forma que sugieres.