Oracle
 sql >> Base de données >  >> RDS >> Oracle

référencer une clé composée dans Oracle

ACCREDITATION_BODY_LOOK_UP a-t-il une clé primaire (ou une clé unique) ?

select constraint_name, constraint_type
from user_constraints
where table_name = 'ACCREDITATION_BODY_LOOK_UP'
and constraint_type in ('P', 'U'); 

Si oui, quelles sont ses colonnes ? Vous devez référencer toutes ces colonnes dans le même ordre lorsque vous ajoutez une clé étrangère à une table dépendante.

select column_name, position
from user_cons_columns
where table_name = 'ACCREDITATION_BODY_LOOK_UP'
and constraint_name = '<< constraint from previous query >>';

Si non, vous devez créer une clé primaire sur cette table avant de pouvoir la référencer dans une clé étrangère.

alter table ACCREDITATION_BODY_LOOK_UP
    add constraint ACCR_BODY_LKUP_PK primary key (ACCREDITATION_BODY_ID);