MSSQL
MSSQL, 저장 프로시저, 문법
비슷한 이름의 테이블 반복문 활용하여 지우기.
상황은 테이블이 숫자를 활용한 비슷한 이름으로 만들어져 있는데,
하나하나 지우기 너무 힘드니... SQL 문법을 활용하여 지우려고 하는 상황.
테이블 이름이...
TB1
TB2
TB3
...
...
TB1000
으로 되어있다...
지우기 위한
쿼리문
↓↓↓↓↓↓↓
DECLARE @ITER INT
DECLARE @QUERY VARCHAR(4000)
SET @ITER=1
SELECT @ITER --ITER값 그냥 출력으로 확인해봄...
WHILE @ITER < 1001 --@ITER 변수값을 1~ 1000 으로 변경시키면서 반복문 돌리기
BEGIN
SET @QUERY='DROP TABLE [TB' + CONVERT(varchar(4),@ITER) +']' --DROP TABLE [테이블명]
--@QUERY 쿼리문에 @ITER값 붙이기. @ITER은 INT이므로 문자형으로 바꿔서 추가하기
EXEC(@QUERY) --@QUERY 수행시키기
SET @ITER=@ITER+1 --@ITER 값 1씩 증가시키는 부분
END
↑↑↑↑↑↑↑
BEGIN
END
빼먹으면 안됨!!
+쿼리수행 범위가 현재 해당 Database로 잡혀있기 때문에 테이블명만 넣었기 때문에
일반적인 형식으로 전체를 다 작성한다고 보면
DROP Table [DataBaseName].[dbo].[TB1]
이와 같이 풀로 다 넣어야 한다.
'불특정 다양한 기록 Part. IT' 카테고리의 다른 글
mssql table indexes reorganize (script, command) 테이블 인덱스 (0) | 2016.10.31 |
---|---|
javascript replace replaceAll . 점 dot 문자바꾸기 (0) | 2016.06.30 |
spring maven dependency 에 mssql jdbc 추가하기 (0) | 2016.06.08 |
엑셀(excel) 새창 열기 (따로 열기) (0) | 2016.05.19 |
Solutions of “Windows cannot be installed to disk 0 partition 1” (0) | 2016.05.13 |