문서유형ㅣ기술정보
분야ㅣ관리/환경설정
적용제품버전ㅣ7FS02PS
문서번호ㅣTADTI102
개요
과거 Tibero5 특정 버전에서 파티션 테이블 생성을 위한 SUBPARTITIONS 구문을 공통으로 적용 시,
'General syntax error.' 가 발생하였고, 이에 서브파티션마다 사용하도록 가이드가 필요 하였습니다.
이후 Tibero6, Tibero7 에서는 SUBPARTITIONS 구문을 공통으로 적용 가능 하도록 변경이 되었습니다.
이 문서에서는 Tibero7에서 적용 예시를 통해 서브파티션 사용 문법을 안내합니다.
방법
미지원 예시 (Tibero5)
미지원 제품버전ㅣTibero5 S1401
Tibero 5 (DB 5.0 S1410) Linux stopbugs 2.6.9-89.ELsmp #1 SMP Mon Jun 22 12:31:33 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux version (little-endian) Patch files ( S1410_CS_05_c S1410_85299a_mig S1410_85309a_jdbc S1410_TOOLCOM_a_bin ) SQL> select * from v$version; NAME VALUE -------------------------------- -------------------------------- PRODUCT_MAJOR 5 PRODUCT_MINOR BUILD_NUMBER 84458 PROTOCOL_MAJOR 2 PROTOCOL_MINOR 5
Tibero5 (미지원 버전) 구문 테스트 : General syntax error 발생
SQL> CREATE TABLE sales99_cpart(
2 sale_id NUMBER NOT NULL,
3 sale_date DATE,
4 prod_id NUMBER,
5 qty NUMBER)
6 PARTITION BY RANGE(sale_date)
7 SUBPARTITION BY HASH(prod_id) SUBPARTITIONS 4
8 (PARTITION cp1 VALUES LESS THAN (TO_DATE('01-01-2014','DD-MM-YYYY')),
9 PARTITION cp2 VALUES LESS THAN (TO_DATE('01-04-2014','DD-MM-YYYY')),
10 PARTITION cp3 VALUES LESS THAN (TO_DATE('01-06-2014','DD-MM-YYYY')),
11 PARTITION cp4 VALUES LESS THAN (TO_DATE('01-10-2014','DD-MM-YYYY')));
TBR-7001: General syntax error.
at line 7, column 31:
SUBPARTITION BY HASH(prod_id) SUBPARTITIONS 4
^^^^^^^^^^^^^
SQL> CREATE TABLE sales99_cpart(
2 sale_id NUMBER NOT NULL,
3 sale_date DATE,
4 prod_id NUMBER,
5 qty NUMBER)
6 PARTITION BY RANGE(sale_date)
7 SUBPARTITION BY HASH(prod_id)
8 (PARTITION cp1 VALUES LESS THAN (TO_DATE('01-01-2014','DD-MM-YYYY')) SUBPARTITIONS 4,
9 PARTITION cp2 VALUES LESS THAN (TO_DATE('01-04-2014','DD-MM-YYYY')) SUBPARTITIONS 4,
10 PARTITION cp3 VALUES LESS THAN (TO_DATE('01-06-2014','DD-MM-YYYY')) SUBPARTITIONS 4,
11 PARTITION cp4 VALUES LESS THAN (TO_DATE('01-10-2014','DD-MM-YYYY')) SUBPARTITIONS 4);
Table 'SALES99_CPART' created.
지원 예시 (Tibero7)
지원 제품 버전 ㅣ7FS02PS
[tibero7@rocky9.4:T724:/home/tibero]tbboot -version
Tibero 7 (DB 7.2.4) Build 303667
Linux bistro-build-centos_8.4 5.15.0-134-generic #145~20.04.1-Ubuntu SMP Mon Feb 17 13:27:16 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux version (little-endian)
Patch files (FS02PS_700093a FS02PS_700103a FS02PS_344166f FS02PS_700110a FS02PS_342949f)
Compiled with "cc -no-pie -ggdb -fstack-protector-all -fno-strict-aliasing -fno-omit-frame-pointer -pipe -O3 -D_OPT_COMPILED -U_FORTIFY_SOURCE -D_USE_VIP -Wall -W -Werror-implicit-function-declaration -Wno-unused-parameter -Wpointer-arith -Wdeclaration-after-statement -DHAVE_CONFIG_H -D_WORDSIZE=64 -D_OS_LINUX -D_LINUX_X86_64 -D_X86 -DUSE_ASSERT -DTSAM -DTSAM_NO_ESDS_SEQUENCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_USE_FSYNC -D_CHECK_LICENSE -D_STBLOG -D_TAC -DFD_SETSIZE=8192 -D_CM_OBSERVER -D_USE_FALLOCATE -D_GNU_SOURCE -D_GNU_SOURCE -D_GNU_SOURCE -D_GNU_SOURCE -DHAVE_EPOLL"
Compiled at Oct 13 2025 01:59:51 build seq 303667 init rev {2023-11-24}
Tibero7 버전 구문 테스트 : 정상 생성
SQL> CREATE TABLE sales99_cpart(
sale_id NUMBER NOT NULL,
sale_date DATE,
prod_id NUMBER,
qty NUMBER)
PARTITION BY RANGE(sale_date)
2 3 4 5 6 7 SUBPARTITION BY HASH(prod_id) SUBPARTITIONS 4
8 (PARTITION cp1 VALUES LESS THAN (TO_DATE('01-01-2025','DD-MM-YYYY')),
9 PARTITION cp2 VALUES LESS THAN (TO_DATE('01-04-2025','DD-MM-YYYY')),
10 PARTITION cp3 VALUES LESS THAN (TO_DATE('01-06-2025','DD-MM-YYYY')),
PARTITION cp4 VALUES LESS THAN (TO_DATE('01-10-2025','DD-MM-YYYY')));
Table 'SALES99_CPART' created.
SQL> DROP TABLE sales99_cpart PURGE;
Table 'SALES99_CPART' dropped.
SQL> CREATE TABLE sales99_cpart(
2 sale_id NUMBER NOT NULL,
3 sale_date DATE,
prod_id NUMBER,
qty NUMBER)
4 5 6 PARTITION BY RANGE(sale_date)
SUBPARTITION BY HASH(prod_id)
(PARTITION cp1 VALUES LESS THAN (TO_DATE('01-01-2025','DD-MM-YYYY')) SUBPARTITIONS 4,
PARTITION cp2 VALUES LESS THAN (TO_DATE('01-04-2025','DD-MM-YYYY')) SUBPARTITIONS 4,
PARTITION cp3 VALUES LESS THAN (TO_DATE('01-06-2025','DD-MM-YYYY')) SUBPARTITIONS 4,
PARTITION cp4 VALUES LESS THAN (TO_DATE('01-10-2025','DD-MM-YYYY')) SUBPARTITIONS 4);
Table 'SALES99_CPART' created.