본문 바로가기

MSSQL

[mssql] table, view, function, procedure 일괄삭제 쿼리

DB가 가지고있는 모든 Table을 삭제하고 싶다고 가정하자, 물론 오른쪽 마우스를 눌러 일일히 삭제 할 수 도 있지만
테이블을 삭제하는 명령어(drop table 테이블명)를 사용하여 일괄적으로 삭제하는 방법을 알아보자.

schema_id: 개체가 포함된 스키마의 id입니다.
type: 개체형식입니다. P- 저장프로시져/ FN- 스칼라함수/ U- 테이블(사용자정의)/ V-뷰


※ table 삭제쿼리
SELECT 'DROP TABLE ' + SCHEMA_NAME(schema_id)+'.'+name AS tableToDrop FROM sys.objects WHERE type='U'

쿼리결과는 다음과 같다.
출력된 쿼리결과를 복사해서 명령어를 실행하면 일괄삭제 완료!



※ view 삭제쿼리
SELECT 'DROP VIEW ' + SCHEMA_NAME(schema_id)+'.'+name AS ViewToDrop FROM sys.objects WHERE type='V'


※ procedure  삭제쿼리

SELECT 'DROP PROCEDURE ' + SCHEMA_NAME(schema_id)+'.'+name AS procedureToDrop FROM sys.objects WHERE type='P'

※ function 삭제쿼리
SELECT 'DROP FUNCTION ' + SCHEMA_NAME(schema_id)+'.'+name AS functionToDrop FROM sys.objects WHERE type='FN'

'MSSQL' 카테고리의 다른 글

begin train  (0) 2011.12.26
다른 DB 테이블 그대로 Copy하여 Insert 하기  (0) 2011.12.02
mssql 컬럼삭제, 컬럼추가, 컬럼변경  (0) 2011.08.31
MSSQL- 제약조건 삭제  (0) 2011.06.13
CASCADE 제약조건 추가/삭제  (1) 2011.05.20