* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
|
Window7 32bit, Linux 64bit 등 |
|
[cubrid_rel] 수행 결과 |
|
[도움말]-[버전정보] 확인 |
|
java, php, odbc 등 입력 |
* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 | 재현 가능한 Source와 SQL |
관련 테이블(인덱스, 키정보 포함) 정보 | CUBRID 홈 디렉토리 아래 log 디렉토리 압축 |
-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
버전정보 :
CUBRID-Windows-x64-9.3.0.0206.exe
CUBRIDManager-2014-build-0460-windows-x64.exe
cmserver-9.3.0.0407-win-x64-gen_cert-patch.zip
안녕하세요?
외래키가 다른테이블에 2개 이상 참조할 경우 create문에 생성시 버그가 있습니다.
그래서 큐브리드 백업시 내보내기하고 가져오기를 하면
가져오기시 불필요한 쿼리문이 생성 되어서 외래키 정보를 불러올시 오류가 납니다.
오류가 된 부분을 편집해서 가져오기를 하니 오류없이 진행이 되네요.
샘플 테이블 스키마정보는 다음과 같습니다.
CREATE TABLE tt_data
(
aa_id INTEGER NOT NULL,
bb_id CHARACTER(8) NOT NULL,
cc_id INTEGER NOT NULL,
dd_name CHARACTER VARYING(20) NOT NULL,
ee_time DATETIME,
CONSTRAINT [primary] PRIMARY KEY(aa_id, bb_id, cc_id, dd_name),
CONSTRAINT tt_data_ibfk_1 FOREIGN KEY (cc_id, bb_id, dd_name) REFERENCES train(cc_id, bb_id, dd_name) ON DELETE NO ACTION ON UPDATE NO ACTION
REFERENCES train ON DELETE NO ACTION ON UPDATE NO ACTION REFERENCES train ON DELETE NO ACTION ON UPDATE NO ACTION <---- 이렇게 불필요한 쿼리문 생성됩니다.
) COLLATE euckr_bin ;
CREATE INDEX cc_id ON tt_data(cc_id, bb_id, dd_name);
내보내기시 index.sql 정보입니다.
ALTER TABLE tt_data ADD CONSTRAINT tt_data_ibfk_1 FOREIGN KEY (cc_id, bb_id, dd_name) REFERENCES train(cc_id, bb_id, dd_name)
ON DELETE NO ACTION ON UPDATE NO ACTION <-- 여기부분 맞는지 모름. 삭제안해도 문제 없이 동작함.
REFERENCES train ON DELETE NO ACTION ON UPDATE NO ACTION REFERENCES train ON DELETE NO ACTION ON UPDATE NO ACTION; <---- 이렇게 불필요한 쿼리문 생성됩니다.
제가 생각하는게 맞는지 궁금하고요.
혹 버그가 맞다면 패치버전을 언제쯤 받을수 있는지 궁금합니다.
빠른답변 감사합니다.