Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

referenciar uma chave composta no Oracle


ACCREDITATION_BODY_LOOK_UP tem chave primária (ou chave única)?
select constraint_name, constraint_type
from user_constraints
where table_name = 'ACCREDITATION_BODY_LOOK_UP'
and constraint_type in ('P', 'U'); 

Se sim, quais são suas colunas? Você precisa fazer referência a todas essas colunas na mesma ordem ao adicionar uma chave estrangeira a uma tabela dependente.
select column_name, position
from user_cons_columns
where table_name = 'ACCREDITATION_BODY_LOOK_UP'
and constraint_name = '<< constraint from previous query >>';

Se não, você precisa criar uma chave primária nessa tabela antes de poder referenciá-la em uma chave estrangeira.
alter table ACCREDITATION_BODY_LOOK_UP
    add constraint ACCR_BODY_LKUP_PK primary key (ACCREDITATION_BODY_ID);