view 프로시져내부에서 select 한 결과를 출력하고자 합니다.
t-sql에서는 view 내부에서 단순히 select하면 그게 결과값으로 출력이 되던데 plpgsql에서는 그렇지 않네요. =_=
refcursor로 리턴을 하면 될 것 같았는데 막상 해보니 refcursor 타입의 칼럼 하나만 떵그러니 리턴되더군요.
어떻게 하면 되는지 궁금하네요....
덤으로 질문하나 더 하겠습니다 ^^;;;
plpgsql 에 대한 책이 없어 t-sql 대한 책을 보면서 프로시져가 어떤건지 감을 잡고 있는데요. t-sql에서 보면 in 파라미터가 있고 out 파라미터가 있고 레코드셋도 있다고 나와있는데 plpgsql에서는 어떻게 대응되는지 궁금합니다.
자바의 callstatement 인터페이스에서 in, out, resultset이 따로 나오는걸 보면 오라클과 같은 다른 DB에서도 비슷한 개념으로 접근하는 것 같습니다.
제 짧은 머리로 생각해보면 function의 인자가 in파라미터에 해당하고 리턴ㅤㅇㅏㅄ이 out 파라미터가 되는것 같은데 레코드셋에 해당하는게 없네요 -.-;; 그리고 out파라미터도 하나밖에 없게되고...
plpgsql의 한계인지.. 아니면 제가 아는게 없어서 그런지 궁금합니다.
덧. 정말 자료가 없다는게 이렇게 고생일줄은 몰랐습니다. ㅠㅠ mysql보다 멋있어보여서 postgresql 로 작업을 시작했는데 이렇게 막힐줄이야.. 흑흑 ㅠㅠ 메일링리스트를 디벼봐도 도움이 될만한 plpgsql 스니플릿은 별로 없네요. :( 운영이나 보안, 최적화에 대한 글은 종종 보이는데 말이죠.
|