2009-11-11 2 views
0

다음과 같은 상황이 있습니다.oracle에서 참조 된 열에 대한 고유 제한 조건 설정 10g xe

테이블 내가 (경쟁, 언어) 조합에 고유 제한 조건이이 표를 필요한이

CREATE TABLE CompetitionsLanguages (
    competition REF CompetitionType SCOPE IS Competitions, 
    language REF LanguageType SCOPE IS Languages 
); 

것 같습니다. oracle은 다른 테이블을 참조하는 열에 UNIQUE 또는 PK를 넣을 수 없다고 알려줍니다.

어떻게 든 고유하거나 CHECK를 사용하거나 TRIGGER를 사용하는 것이 가능합니까?

+1

나는 답을 모른다. 그러나 호기심에서 왜 테이블에이 객체 구문을 사용하고 있습니까? 이런 종류의 구문을 기반으로 구축 된 실제 데이터베이스의 수가 0으로 좋음을 확신 할 수 있습니다. –

+0

대학 과정에서 예제 프로젝트를 위해 그들을 사용. 나에게 묻지 마라. 나는 결코 자발적으로 이것을하지 않을 것이다. 그러나, 그대로입니다. 그래서 나는 해결책의 일종을 생각해 내야한다. – Zaak

답변

2
CREATE UNIQUE INDEX unqIndex 
    ON CompetitionsLanguages(CompetitionsLanguages, CompetitionsLanguages); 
+0

+1 흥미로운 것은 UNIQUE CONSTRAINT를 생성 할 때 ORA-02329와 함께 실패합니다. – APC

관련 문제