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
운영게시판
최근게시물
MS-SQL Q&A 1359 게시물 읽기
No. 1359
PROC작성시 테이블명을 변수로 정할수 있는지요?
작성자
카라
작성일
2004-06-03 11:18
조회수
3,317

OS : Microsoft Windows 2000 Server / Advanced Server

SQL : Microsoft SQL Server 2000 Standard / Enterprise Edition

 

CREATE PROCEDURE [SP_TEST] AS

DECLARE @S1 NVARCHAR(255),@S2 NVARCHAR(255),@S3 NVARCHAR(255),@H NVARCHAR(255),@CNT INT

SET @S1=''

SET @S2=''

SET @S3=''

SET @H =''

SET @CNT =''

 

DECLARE @i INT

SET @i=1

 

DECLARE H_CUR CURSOR FOR

SELECT COL1,COL2,COL3,COL4,COUNT(*) FROM YYY

GROUP BY COL1,COL2,COL3,COL4

OPEN H_CUR

 

FETCH NEXT FROM H_CUR

INTO @S1 ,@S2,@3,@H,@CNT

SELECT @i,@S1 ,@S2,@3,@H

WHILE @@FETCH_STATUS=0

 

BEGIN

 

select COL1,COL2,COL3,COL4

into "서울_"+@S2+"_"+@H <---------구문에러!

from TB

WHERE 절...생략

FETCH NEXT FROM HDONG_CUR

INTO @S1 ,@S2,@S3,@H,@CNT

SET @i = @i +1

SELECT @i,@S1,@S2,@S3,@H

 

END

 

CLOSE H_CUR

DEALLOCATE H_CUR

GO

 

 

======================================================================================

YYY라는 테이블에서 조건별로 여러테이블을 생성하려는 PROC입니다.

테이블명을 변수로 정할수 있는지요?

into "서울_"+@S2+"_"+@H <---------구문에러!

아시는분 조언부탁합니다.

 

 

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

'sp_executesql'를 이용하셔서, 동적 쿼리를 이용하시면 됩니다.

 

select COL1,COL2,COL3,COL4

into "서울_"+@S2+"_"+@H    <---------구문에러!

 

아래와 같이

 

 

 Declare @query NVARCHAR(512)  -- 꼭 NVARCHAR로 선언해야 함.

            ,@ret_value   INT;             --  동적 명령문의 성공(0), 실패(1)

                                                  -- 여부  

 

-- 명령문을 동적으로 생성함.

-- 문자 앞의 N은 문자열을 유니코드로 변경함.

SELECT  @query  =N' select COL1,COL2,COL3,COL4

                into 서울_'+@S2+ '_' + @H  + '

               from TB

          WHERE 절...생략';

 

EXEC @ret_value = sp_executesql  @query 

 

IF @ret_value = 0

   SELECT '성공';

ELSE

   SELECT '실패';

 

 

fall97님이 2004-06-11 16:56에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1362[급질]이렇땐 어떻게 쿼리를 만들어야 할까요?고수님들 부탁합니다~~ [1]
궁금이7
2004-06-07
2160
1361스케쥴러 에러 발생 문제(고수분들의 많은 답변 기다리겠습니다. please~~)
정말궁금
2004-06-03
2665
1360사용자가 EM 접속시 [보안]-[로그인]에서 사용자목록을 못보도록 하려면?
초궁금
2004-06-03
2277
1359PROC작성시 테이블명을 변수로 정할수 있는지요? [1]
카라
2004-06-03
3317
1358사용자 정의 함수 관련 질문입니다. 고수님들 제발~~
바보
2004-06-02
2828
1357EM에서 데이터 내보내기시 에러
최규필
2004-06-02
2320
1355DB 생성과 유저 생성
꼬마
2004-06-02
2771
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.023초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다