데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

-----  질문을 바꾸도록 하겠습니다~ -----


테이블 변수 사용하여 WHILE 문을 구동하려고 합니다.

커서의 속도 문제로 테이블 변수를 사용하면 빠르다고 하여 그렇게 만들었습니다.


Declare @테이블변수 Table (

컬럼명 타입 Not Null, 

컬럼명 타입 Not Null

)


이렇게 선언된 테이블 변수에 작업하고자 하는 레코드를 INSERT 시키려고 합니다.

그런데 insert 시킬 select 쿼리의 테이블 명이 동적으로 할당 되기 때문에 다음과 같이 작성하였습니다.


Set @insSQL = N'insert into @테이블변수 select 컬럼1, 컬럼2 from ' + @tableName + ' where 조건'


그랬더니 @테이블변수 선언이 있어야 한다고 오류가 나네요..

그래서 찾아봤습니다.

동적 쿼리에서 테이블 변수의 사용에 관하여..


두 가지 방법이 있더라구요


1. 선언문과 insert into 쿼리문을 전부 Set @insSQL 변수에 싸그리 넣어서 EXEC 시키는 방법

2. 타입 선언하여 처리하는 방법


질문입니다~

선언문과 변수테이블에 INSERT 작업하는 문을 모두 @insSQL 변수에 넣어 주고 EXEC sp_executesql @insSQL 해줘도

그 아래 쪽에서 @테이블변수를 사용하려고 하면 테이블 변수를 선언해야 한다면서 아예 프로시저가 만들어지지 않더라구요..

그럼 프로시저 전체 문장을 감싸서 넣어야 한다는 이야긴데... ㅡㅡ 이건 좀 아닌 것 같아서요..


그리고 타입 선언하는 방법은 쓰는 법을 잘 모르겠어서요...

검색과 학습의 한계를 느끼네요 ㅎㅎ


커서 속도 문제로 변수 테이블을 사용했는데 이렇게 되면 임시 테이블 같은 걸 생성하는 방법밖에는 없는건가요?

그럼 속도문제는 해결이 안될 것 같은데.. 조언 부탁드립니다.

No. Subject Author Date Views
7194 시퀀스와 기본키, 유니크 관련문의입니다. [15] 하하하하하 2013.09.26 5288
7193 조인과 서브쿼리 관련 질문입니다. [4] 흑흑 2013.09.26 6190
7192 MSSQL '문자열이나 이진 데이터는 잘립니다.' 오류 문의 [4] rusl 2013.09.26 41561
7191 MSSQL 모니터링 솔루션 추천 바랍니다. [3] 수노 2013.09.26 5333
7190 기간별 검색 문의 [1] 아기탱구 2013.09.26 3853
7189 데이타 추출 [2] 냥냥 2013.09.25 3678
7188 계정 관련 질문 하나 올립니다. [2] ViewPple 2013.09.25 3071
» 테이블 변수를 동적 쿼리에서 사용할 때 질문입니다. (질문 수정본) [1] Larry 2013.09.25 15757
7186 mysql 몇가지 질문... 이런마마 2013.09.25 3623
7185 PK 형 변환 질문 [4] 군고구마 2013.09.25 3834
7184 sp_executesql에 대해 문의좀 드리겠습니다. [3] 호야~♥ 2013.09.25 3783
7183 선배님들 트랜잭션에 관해서 궁금한점이 있습니다 [5] alima 2013.09.25 3774
7182 group by를 안쓰도록 변경할 수 있나요? [6] 디베이 2013.09.25 4187
7181 쿼리 질문드립니다. [4] 나는짱이야 2013.09.24 3704
7180 게시판에서 같은 아이디의 글수를 제한하고 싶습니다. [4] 카루카루 2013.09.24 4021
7179 SSMS에서 Windows 인증으로 로그인 시 지연되는 문제 [1] 이티 2013.09.24 4342
7178 MS-SQL2000 -> MS-SQL2012 업그레이드 후 일부 쿼리 속도 저하 문제 [4] 로지남푠 2013.09.24 6399
7177 SQL Server 2008 디비를 백업해서 2005에 restore할 수 있나요? [3] 정인화_307824 2013.09.24 4316
7176 하루 한번만 랜덤으로 순서가 나오게 하고 싶습니다. [4] 퀸동 2013.09.23 4393
7175 혹시 음가변환 데이터 구할 수 있을까요? [1] 불꽃남자11 2013.09.23 3447





XE Login