반응형
데이터베이스에서 루프문을 사용하고 싶은경우가 있습니다. 성능테스트를 위하여 일괄로 테스트데이터를 만들어 넣거나 반복해서 처리해야될 경우가 있습니다. 이때는 WHILE문을 사용하면됩니다.
While문 사용예시
while문을 조건이 만족할때까지 루프문을 반복합니다. 아래 예제의 경우는 Address테이블에 임의의값을 넣는부분으로 @iLoopCnt값이 30보다 작거나 같을경우에 반복합니다. 이와같이 루프문을 이용하면 테이블에 테스트 데이터를 넣을수 있고 해당부분으로 테스트 할수 있습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
declare @iLoopCnt int
declare @iCnt int
set @iLoopCnt =0
set @iCnt = 30
--반복처리
while (@iLoopCnt <= @iCnt)
begin
insert into [AdventureWorks2014].[Person].[Address]
( AddressLine1,PostalCode,City,StateProvinceID)
values
(@iLoopCnt, 'postalcode','City',79)
set @iLoopCnt = @iLoopCnt +1
print @iLoopCnt
end
|
반복문 처리도중 특정조건일경우에 빠져나오고 싶을경우에는 break문을 사용해서 루프문을 빠져나올수 있습니다. 일반적인 프로그램 하는 부분과 동일합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
declare @iLoopCnt int
declare @iCnt int
set @iLoopCnt =0
set @iCnt = 30
--반복처리
while (@iLoopCnt <= @iCnt)
begin
set @iLoopCnt = @iLoopCnt +1
if @iLoopCnt < 10
begin
print 'continue' + str(@iLoopCnt)
end
else
begin
print 'break' + str(@iLoopCnt)
break
end
end
print 'exit loop'
|
'프로그래밍 > DB' 카테고리의 다른 글
[DB] MSSQL 문자함수 공백제거(LTRIM,RTRIM,TRIM) (0) | 2021.06.08 |
---|---|
[DB] MariaDB 설치하기(10.5.10) (0) | 2021.05.17 |
[DB] 무료DB관리툴 dbeaver (MSSQL,ORACLE,MySql,SQLite등) (0) | 2021.02.20 |
[DB] MSSQL 테이블 전체리스트 및 필드현황 조회방법 (0) | 2021.01.26 |
[DB] MSSQL 시퀀스(Sequence)생성방법 (0) | 2021.01.02 |