본 장에서는 UTL_COMPRESS 패키지의 기본 개념과 패키지 내의 함수를 사용하는 방법을 설명한다.
본 절에서는 UTL_COMPRESS 패키지에서 제공하는 함수를 알파벳 순으로 설명한다.
데이터를 압축하여 반환하는 함수이다. BLOB 타입을 입력으로 받으면 BLOB 타입을, RAW 타입을 입력으로 받으면 RAW 타입을 반환한다.
LZ_COMPRESS 함수의 세부 내용은 다음과 같다.
프로토타입
BLOB인 경우
UTL_COMPRESS.LZ_COMPRESS ( src IN BLOB, quality IN BINARY_INTEGER DEFAULT 6 ) RETURN BLOB;
RAW인 경우
UTL_COMPRESS.LZ_COMPRESS ( src IN RAW, quality IN BINARY_INTEGER DEFAULT 6 ) RETURN RAW;
파라미터
파라미터 | 설명 |
---|---|
src | CLOB이나 RAW 타입의 압축할 데이터이다. |
quality | 압축률을 나타낸다. 1부터 9까지 설정할 수 있으며 숫자가 커질수록 압축률이 좋아진다. (기본값: 6) |
예제
DECLARE data RAW(500); BEGIN data := UTL_COMPRESS.LZ_COMPRESS('A1B2C3D4E5F6', 6); DBMS_OUTPUT.PUT_LINE(data); END; /
압축된 데이터를 압축 해제하여 반환하는 함수이다. BLOB 타입을 입력으로 받으면 BLOB 타입을, RAW 타입을 입력으로 받으면 RAW 타입을 반환한다.
LZ_UNCOMPRESS 함수의 세부 내용은 다음과 같다.
프로토타입
BLOB인 경우
UTL_COMPRESS.LZ_UNCOMPRESS ( src IN BLOB ) RETURN BLOB;
RAW인 경우
UTL_COMPRESS.LZ_UNCOMPRESS ( src IN RAW ) RETURN RAW;
파라미터
파라미터 | 설명 |
---|---|
src | CLOB이나 RAW 타입의 압축을 풀 데이터이다. |
예제
DECLARE comp_data RAW(500); real_data RAW(500); BEGIN comp_data := UTL_COMPRESS.LZ_COMPRESS('A1B2C3D4E5F6', 6); real_data := UTL_COMPRESS.LZ_UNCOMPRESS(comp_data); DBMS_OUTPUT.PUT_LINE(real_data); END; /