Lob type이란?
lob(Large Object) 타입은 대용량 데이터를 저장하기위한 데이터 타입으로 오라클 8버전부터 지원된다.
Lob 타입의 특징
이전에 대용량 처리는 long 타입으로 처리를 할 수 밖에 없었다. 그런데 이 칼럼은 한테이블에 하나만 사용할 수 있으며 최대 크기가 2GB였다. 더군다나 검색을 구현하기가 어려워 포기를 해야 했다. 그래서 이런 문제를 보안하기 위 나온 것이 Lob 타입이다. Lob 타입은 테이블에 여러개의 컬럼을 생성할 수 있으며 최대 크기가 4GB이다. 또한 long 타입보다 훨씬 쉬운 검색기능을 제공한다.
Lob type의 종류
이전에 대용량 처리는 long 타입으로 처리를 할 수 밖에 없었다. 그런데 이 칼럼은 한테이블에 하나만 사용할 수 있으며 최대 크기가 2GB였다. 더군다나 검색을 구현하기가 어려워 포기를 해야 했다. 그래서 이런 문제를 보안하기 위 나온 것이 Lob 타입이다. Lob 타입은 테이블에 여러개의 컬럼을 생성할 수 있으며 최대 크기가 4GB이다. 또한 long 타입보다 훨씬 쉬운 검색기능을 제공한다.
BLob | (Binary Large Object), 이진 바이너리 데이터의 저장시 사용된다. |
CLob | (Character Large Object), 문서 데이터의 저장시 사용된다. |
BFILE | 외부 파일에 저장된 이진 데이터가 있는 경로의 저장시 사용된다. |
Clob에 저장하기
1: import java.sql.*; 2: import java.io.*; 3: import oracle.sql.*; 4: import oracle.jdbc.driver.*; 5: ... 6: 7: public void insertQuery(UploadBoard up,int re_step,int re_level) throws Exception 8: { 9: ResultSet rs = null; 10: PreparedStatement pstmt = null; 11: Connection conn = null; 12: String query = "insert into "+up.getTableName()+" (seq,re_step, re_level,name,title,pwd,email,readnum,writeday,ip,relativeCnt, homepage,imgInfo,content,tag) values(?,?,?,?,?,?,?,0,sysdate,?,0,?,?,empty_clob(),?)";
|
Clob 불러오기
... 1: public BoardTable getViewData(String tableName,int seq) throws Exception 2: { 3: BoardTable bTable = new BoardTable(); 4: String query = " select * from "+tableName+" where seq = ? "; 5: ResultSet rs = null; 6: PreparedStatement pstmt = null; 7: Connection conn = null; 8: try{ 9: conn = DBManager.getConnection(); 10: pstmt = conn.prepareStatement(query); 11: pstmt.setInt(1,seq); 12: rs = pstmt.executeQuery(); 13: if (rs.next()) { 14: ... 15: ... 16: StringBuffer output = new StringBuffer(); 17: Reader input = rs.getCharacterStream("content"); 18: char[] buffer = new char[1024]; 19: int byteRead; 20: while((byteRead=input.read(buffer,0,1024))!=-1){ 21: output.append(buffer,0,byteRead); 22: } 23: input.close(); 24: bTable.setContent(output.toString());
|
출처 : http://www.gurubee.net/lecture/1870
'개발을하자 > SQL' 카테고리의 다른 글
#오라클 (테이블,컬럼) 주석 확인 / 컬럼명으로 테이블 찾기 (0) | 2018.12.27 |
---|---|
#오라클# 테이블 정보 조회하기 (0) | 2018.12.27 |
#프로시저# 다른 DB의 데이터 검색해서 받아와보자공! (0) | 2015.06.02 |
#FULL OUTER JOIN# 테이블 3개 조인하는 방법! (0) | 2015.06.02 |
#Convert# 날짜 형식 변환! (0) | 2015.06.02 |
댓글