오라클로 게시판을 구현할때 가장 애로점이 생기는 부분이 페이징인듯 합니다.
간편하게 하는 방법에는 index_desc 힌트를 사용해서 구현하는 방법도 있습니다.
예를 역정렬인덱스(?)를 사용해서 rownum을 이용한 페이징을 하는 방법인데요 예문을 들어보면 다음과 같습니다.
Primary key는 일괄 시리얼 넘버(ID라고 하죠)라 하고 Primary key의 Constraints Name이 PK_BOARD라고 한다면
select a.id from (select /*+ INDEX_DESC(PK_BOARD) */ rownum as rnum, id from board where id>0 order by id desc) a where rnum >= 1 and rownum <=20과 같은 형식의 쿼리문을 쓰면 한페이지에 20개의 글이 뜨게 됩니다.
게시판의 구현방법은 Mysql을 사용해보셨다면 기본적으로 취향에 맞는 방향으로 구현하시면 되구요 Oracle 역시 페이징 이외의 부분에서는 Mysql과 마찬가지라고 생각을 합니다.
개인적으로 회사에서 주구장창 오라클로 모든것을 개발하다가 얼마전에 Mysql을 사용해서 게시판만을 분리했는데 흐흐흐... 게시판을 위해서 오라클을 쓰는 이유를 모를정도로 가볍고 막강하더군요 잡담이었습니다. 도움이 되셨기를...
Good luck... Frost
|