database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 41524 게시물 읽기
No. 41524
view pk 컬럼을 다른테이블에 참조키로 사용할수 없나요?
작성자
전윤기(wjsdbsrl1)
작성일
2018-02-14 09:32
조회수
5,530

A 와 B 테이블을 UNION JOIN 해서 VIEW 를 하나 만들었습니다. 

만든 뷰에 ADD CONSTRAINT 해서 PK를 추가했구요. 

만든 PK를 D라는 테이블에 외래 키로 지정하려는데 ORA-02270 에러가 계속 뜨네요. 

 

 

<쿼리>

//(뷰 생성)

 

CREATE VIEW pre_view

AS select i.ins_code as code, i.ins_name as name, i.pay_state as pay_state from inspection i

union 

select m.me_code as code, m.me_name as name, m.insurance_stat as pay_state from medicine m

order by 1 desc;

//(뷰에 PK 달기)

alter view pre_view add constraint primary key(code) disable;

// (D 테이블 생성)

 

fmi_id NUMBER,

acc_id NUMBER,

vcode varchar2(26),

unit VARCHAR2(20),

amount number,

count NUMBER,

duration NUMBER,

fin_date date,

CONSTRAINT pk_fmi PRIMARY KEY(fmi_id),

CONSTRAINT fk_fmi_acc FOREIGN KEY(acc_id) REFERENCES accept(acc_id),

CONSTRAINT fk_fmi_view FOREIGN KEY(vcode) REFERENCES pre_view(code)

 

 

<에러내용>

 

ORA-02270: 이 열목록에 대해 일치하는 고유 또는 기본 키가 없습니다.

02270. 00000 -  "no matching unique or primary key for this column-list"

*Cause:    A REFERENCES clause in a CREATE/ALTER TABLE statement

           gives a column-list for which there is no matching unique or primary

           key constraint in the referenced table.

*Action:   Find the correct column names using the ALL_CONS_COLUMN

 

아시는 분 부탁좀 드릴게요~ 

 

[Top]
No.
제목
작성자
작성일
조회
41527oracle 버전 숫자의 의미를 알고 싶어요 [1]
박도현
2018-02-21
5184
41526한 컬럼에서 문자와 숫자 분리하기.. [6]
박양희
2018-02-20
6392
41525단위가 다른 정보 조회하기 [2]
일쌍다반사
2018-02-14
5379
41524view pk 컬럼을 다른테이블에 참조키로 사용할수 없나요?
전윤기
2018-02-14
5530
41522주소에서 번지까지만 추출 [3]
쿼리질문
2018-02-06
5827
41521insert시 점점 느려지는 현상
황의중
2018-02-01
5434
41520하단 합계값에 대한 비율을 구하고 싶습니다. [1]
봉달이
2018-01-31
6008
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다