unloaddb 에러 확인 요청.

by 정현 posted Nov 13, 2023


* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.

OS
Oracle Linux
CUBRID Ver.
10.2.1.8849
CUBRID TOOL Ver.
CUBRID Migration Toolkit
응용 환경(API)
java, php, odbc 등 입력


* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.

 

에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
안녕하세요.

이번에 DB를 옮겨야 되서 귀사의 CMT를 사용하게 되었습니다.

버전이 낮아 온라인 to 온라인 방식으로는 진행이 안 되어 대상 유형에서 로컬 CUBRID dump 파일을 선택해서 진행하였는데,

schema 파일을 옮기는 과정에서 에러가 발생하고 있습니다.

몇 몇 부분을 수정하니 테이블이 생성되는 것을 봤을 때 추출할 때 쓰인 문법에서 에러가 발생한 것 같은데,

한 두개라면 수작업으로 하겠습니다만 옮겨야 할 DB테이블이 많은지라 하나하나 수정이 어려운 상황입니다.

하기 에러 해결방법이 있을 지 문의 드립니다.

 

[추출된 schema 파일의 일부]

CREATE TABLE [bak_std_menu](

[menu_id] varchar(10) NOT NULL,

[menu_nm] varchar(200) NOT NULL,

[menu_dc] varchar(200),

[menu_cntnt_path_nm] varchar(200),

[prgrm_path_nm] varchar(200),

[prgrm_nm] varchar(200), [use_at] varchar(1) NOT NULL,

[upper_menu_id] varchar(10), [menu_image_nm] varchar(100),

[menu_scrind_ordr] varchar(5), [mnupg_se_code] varchar(30),

[frst_crtr_id] varchar(10) DEFAULT 'SYSTEM' NOT NULL,

[frcrt_dt] varchar(14) DEFAULT 'TO_CHAR(SYS_DATETIME, ''YYYYMMDDHH24MISS'')',

[last_updusr_id] varchar(10) DEFAULT 'SYSTEM' NOT NULL,

[lsupd_dt] varchar(14) DEFAULT 'TO_CHAR(SYS_DATETIME, ''YYYYMMDDHH24MISS'')',

[popup_scrn_at] varchar(1) );

 

[에러내용]

Start schema loading.
ERROR: Execute: Data overflow coercing 'TO_CHAR(SYS_DATETIME, ''YYYYMMDDHH24MISS'')' to type varchar(14). create class bak_std_menu ( menu_id varchar(10) not null , m...

Error occurred during schema loading.
Aborting current transaction... done.

 

아래는 제가 따로 수작업으로 수정해서 입력이 되는지 확인해본 부분이며 이외 추가로 문법에러가 더 있는 것으로 예상되는 상황입니다.

[수정하면 문제가 사라지는 부분]

[수정 전]

[frcrt_dt] varchar(14) DEFAULT 'TO_CHAR(SYS_DATETIME, ''YYYYMMDDHH24MISS'')',

[lsupd_dt] varchar(14) DEFAULT 'TO_CHAR(SYS_DATETIME, ''YYYYMMDDHH24MISS'')',

[수정 후]

[frcrt_dt] varchar(14) DEFAULT ‘SYS_DATETIME’

[lsupd_dt] varchar(14) DEFAULT ‘SYS_DATETIME’