sp_MSforeachdb 프로시저는 모든 데이터베이스 이름으로 지정한 명령을 수행하는 프로시저이다.
master 데이터베이스에 있으며, BOL(Books Online)에 문서화 되지 않은 프로시저이다.
이 프로시저를 다음과 같이 활용할 수 있다.
인스턴스 내에 있는 모든 데이터베이스에 대한 이름 확인
EXEC sp_MSforeachdb 'USE ?; SELECT DB_NAME()'
|
인스턴스 내의 모든 데이터베이스의 helpfile 정보 확인
EXEC sp_MSforeachdb 'USE ?; EXEC sp_helpfile'
|
인스턴스 내의 모든 데이터베이스에서 특정 컬럼이름을 포함하는 테이블 찾기
-- 컬럼이름 STATUS를 포함하는 테이블 찾기 EXEC sp_MSforeachdb 'SELECT * FROM ?.INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME = ''STATUS'''
|
인스턴스 내의 모든 데이터베이스에서 특정 단어를 포함하는 테이블 찾기
-- A로 시작하는 테이블 찾기 EXEC sp_MSforeachdb 'SELECT * FROM ?.INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME LIKE ''A%'''
|
'DBMS > SQL Server' 카테고리의 다른 글
[SQL Server] 사용자 정의 데이터 형식 (User Defined data Type) (0) | 2013.09.28 |
---|---|
[SQL Server] 클러스터 구성 여부 DB에서 확인하기 (0) | 2013.09.05 |
[SQL Server] 강제로 IDENTITY 값 입력하기 (0) | 2013.09.02 |
[SQL Server] 길이를 명시하지 않고 문자열을 선언한 경우 (0) | 2013.08.26 |
[SQL Server] SELECT 절에 대부분의 컬럼을 명시해야할 경우 (0) | 2013.08.22 |