database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
ㆍDB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DB2 Q&A 954 게시물 읽기
No. 954
분석에서..declare 문 사용하기
작성자
하늘(zo2010)
작성일
2006-03-30 10:15ⓒ
2006-03-30 10:23ⓜ
조회수
5,319


안녕하세요 토드를 이용해서 DB2 작업중입니다..
MS-SQL 쿼리분석기에서는 아래와 같은 문장이 실행이 가능하지만.
DB2에서는 첫줄부터 오류가 발생합니다.
프로시저로 만들어야만 가능한건가요.?

 

DECLARE @AN_YEAR VARCHAR(15) DEFAULT '2006';

SELECT YYYYMM,CUST_GRADE,COUNT(*) CNT
FROM T_MEM
WHERE YYYYMM>=@AN_YEAR || '01'
GROUP BY YYYYMM,CUST_GRADE

 

프로시저등으로 작업한다면 간단히 한번실행하고 프로시저가 삭제 가능할까요?

이 글에 대한 댓글이 총 1건 있습니다.

프로시저로 만드셔야 합니다.

create procedure test_pl()
language sql
reads sql data
dynamic result sets 1
BEGIN
DECLARE an_year varchar(15) default '2005';

declare test_cursor cursor with hold with return to client
for
SELECT YYYYMM ,CUST_GRADE,COUNT(*) CNT
FROM T_MEM
WHERE YYYYMM >= AN_YEAR || '01'
GROUP BY YYYYMM,CUST_GRADE
;

open test_cursor;
END
!

 

마지막에 statement delimiter를 !로 설정 했습니다.

토드나 퀘스트에서 실행시는 설정에서 statement delimiter를 !로 주셔야 합니다.

삭제시에는 drop procedure test_pl

하시면 됩니다.

brahman님이 2006-04-01 16:39에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
957쿼리좀 부탁드려요. [2]
개발자
2006-04-01
5373
956[질문] char()함수에서 날짜를 문자열로 바꿀려고 하는데요 [3]
이준식
2006-03-31
6636
955큰 테이블의 reorg시 질문~ [3]
osast
2006-03-30
4833
954분석에서..declare 문 사용하기 [1]
하늘
2006-03-30
5319
953[IBM][CLI Driver][DB2/NT] SQL0101N 명령문이 너무 길거나 너무 복잡합니다. SQLSTATE=54001 [2]
미리내
2006-03-28
6648
952[질문] DB2의 DATE 데이타 타입의 크기가 4바이트 맞나요? [2]
이준식
2006-03-27
5144
951[질문] 만들어진 sequence와 특정 테이블 기본키는 무엇인지.. [2]
이준식
2006-03-24
5699
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.016초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다