반응형
다음의 경우가 발생하였을 때 해당 사용자에게 이메일을 보내야 했다.
- 사용자가 어떠한 작업을 담당자에게 결재 요청하였을 경우
- 담당자가 그 작업을 결재 승인하였을 경우
- 작업이 수행되다가 에러가 발생하였을 경우
이때, 첫 번째와 두 번째 경우는 발송 내용에 어떤 작업인지만 넣어 보내면 되므로 파일 크기가 크지 않다.
그러나 세 번째의 경우에는 어떤 작업인지, 언제 에러 떴는지, 어떤 로그를 찍어냈는지, 담당자가 누구인지 등 담아야할 내용이 많다.
그래서 발송 내용의 데이터 타입으로 문자열 데이터를 DB 외부에 저장하는 CLOB을 사용하였다.
(CLOB는 '씨로브'라고 읽어야 한다.. '클롭' 아님)
CLOB이란?
문자열 데이터를 DB 외부에 저장하기 위한 데이터 타입으로, 쉽게 말하면 대용량 텍스트 데이터를 외부 파일로 저장하는 데이터 타입이다.
(1) CLOB 타입 최대 크기: 4GB
(2) CLOB 타입 입출력값 표현: 쿼리문에서 문자열 타입으로 표현
① CHAR(n), VARCHAR(n), NCHAR(n), NCHAR VARYING(n) 타입에 맞춰 변환 가능함
② 단, 명시적 타입만 변환되며, 데이터 길이가 서로 다를 경우 최대 크기가 작은 타입에 맞춰 truncate한다. (가변길이)
(3) CLOB 타입 데이터 ⇆ 문자열 데이터 변환
① CLOB 타입 데이터 → 문자열 데이터: 최대 1GB까지 데이터 변환 가능
② CLOB 타입 데이터 ← 문자열 데이터: CLOB 저장소에서 제공하는 최대 크기까지 변환 가능
반응형