개요
Tibero에서 제공하는 XMLTYPE은 XML 데이터를 처리하기 위한 데이터 타입으로, 내부적으로 CLOB 기반과 OBJECT 기반 두 가지 방식으로 제공합니다.
DB 이관 시, AS-IS 환경과 TO-BE 환경에서 XMLTYPE 데이터 타입을 동일하게 유지하려면 CLOB 기반 XMLTYPE을 OBJECT 기반 XMLTYPE으로 변환해야 합니다. O사에서는 XMLTYPE이 기본적으로 OBJECT 타입으로 저장되며, Tibero로 이관 시 이를 맞추기 위한 변환 작업이 필요합니다.
방법
XMLTYPE은 XML 문서를 데이터처럼 저장하는 데이터 타입입니다.
•
테이블 생성 시 XMLTYPE 컬럼을 정의하면 Tibero는 내부적으로 CLOB 형태로 XML 문서를 저장한다.
•
Tibero에서 제공하는 XMLTYPE은 CLOB 기반 XMLTYPE과 OBJECT 기반 XMLTYPE이 있으며, DB 이관 시 AS-IS와 TO-BE 환경의 XML TYPE을 동일하게 유지해야 합니다.
O사에서 Tibero로 이관하는 경우, Oracle의 XMLTYPE은 기본적으로 OBJECT 타입이므로, Tibero에서도 OBJECT 타입 XMLTYPE으로 설치 후 이관이 필요합니다.
XMLTYPE 확인방안
1.
AS-IS DB
$ cd $TB_HOME/scripts/pkg/
$ tbsql sys/tibero @xmltype_install_checker
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
XMLTYPE OID(00000000000000000000000000000001) IS VALID
===XMLTYPE(CLOB) DEPENDENCY LIST===
===================================
PLEASE CHECK DEPENDENCY LIST.
DEPENDENCY LIST WILL BE INVALIDATED IF YOU INSTALL XMLTYPE(OBJECT)
YOU CAN INSTALL XMLTYPE(OBJECT)!!
PSM completed.
SQL
복사
2.
TO-BE DB (방법 동일)
$ cd $TB_HOME/scripts/pkg/
$ tbsql sys/tibero @xmltype_install_checker
SQL
복사
O사 → Tibero 이관 시 (TO-BE DB의 XMLTYPE을 OBJECT로 변경)
TO-BE DB 확인 결과 CLOB 타입일 경우, XMLTYPE을 OBJECT로 변경 작업을 수행합니다.
CLOB 타입일 경우 아래와 같은 메시지가 출력됩니다.
$ tbsql sys/tibero @xmltype_install_checker
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
XMLTYPE OID(00000000000000000000000000000001) IS VALID
===XMLTYPE(CLOB) DEPENDENCY LIST===
===================================
PLEASE CHECK DEPENDENCY LIST.
DEPENDENCY LIST WILL BE INVALIDATED IF YOU INSTALL XMLTYPE(OBJECT)
YOU CAN INSTALL XMLTYPE(OBJECT)!!
PSM completed.
SQL
복사
1.
XMLTYPE을 Object로 변경
$ tbsql sys/tibero @install_xmltype
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
Type 'XMLTYPE' created.
Type 'XMLSEQUENCETYPE' created.
Package 'STANDARD_EXTENSION_XML' created.
System altered.
Type 'SQLPROF_ATTR' created.
Synonym 'SQLPROF_ATTR' created.
Granted.
Package 'DBMS_SQLTUNE' created.
Synonym 'DBMS_SQLTUNE' created.
Granted.
SQL
복사
2.
변경 후 TO-BE DB XMLTYPE 타입 재확인
$ tbsql sys/tibero @xmltype_install_checker
tbSQL 7
TmaxTibero Corporation Copyright (c) 2020-. All rights reserved.
Connected to Tibero.
===XMLTYPE(OBJECT) IS ALREADY INSTALLED===
===XMLTYPE(OBJECT) DEPENDENCY LIST===
===================================
PLEASE CHECK DEPENDENCY LIST.
DEPENDENCY LIST WILL BE INVALIDATED IF YOU UNINSTALL XMLTYPE(OBJECT)
YOU CAN UNINSTALL XMLTYPE(OBJECT)!!
PSM completed.
SQL
복사