FireBird Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
파이어버드 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
IBPhoenix
FireBird Main site
볼랜드포럼 광고 모집

FireBird 팁&트릭
[31] 동적 SQL문 실행을 위한 EXECUTE STATEMENT 문
박지훈.임프 [cbuilder] 7006 읽음    2006-12-05 01:56
리턴할 필드 리스트나 조회할 where 조건이 경우에 따라 변해야 하는 경우 동적으로 SQL문을 문자열로 만들고 실행하기 위한 문법이 필요합니다. 그럴 때 쓸 수 있는 문법이 EXECUTE STATEMENT 문법입니다. 사용하는 방법은 간단합니다.

EXECUTE STATEMENT 쿼리문

여기서 쿼리문에는 문자열 자체나 문자열 변수가 들어갈 수 있고, psql에서 into를 이용해서 변수 값을 받아올 수도 있습니다. 간단한 예를 들어보면,
CREATE PROCEDURE NEW_PROCEDURE 
returns (
    result bigint)
as
declare variable xsql varchar(100);
begin
  xSql = 'select count(readcount) from new_table';
  EXECUTE STATEMENT :xSql into :result;
  suspend;
end

위 예에서 보다시피, 결과셋을 리턴하는 SQL 문을 동적으로 생성해서 실행할 경우 그 결과를 일반 select 문에서처럼 into를 이용하여 변수 리스트로 넣을 수 있습니다.

+ -

관련 글 리스트
31 동적 SQL문 실행을 위한 EXECUTE STATEMENT 문 박지훈.임프 7006 2006/12/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.