시스템 데이터베이스를 제외한 사용자 데이터베이스의 전체 테이블 목록과 해당 테이블의 rows 를 확인하는 방법에 대해서 아래와 같이 쿼리를 정리하였습니다.
-- 전체 테이블
EXEC sp_MSForEachDB 'Use [?];
-- 시스템 데이터베이스 제외
IF DB_ID(''?'') > 4
BEGIN
SELECT ''?'' AS ''Database'', O.name, I.rows FROM SYSOBJECTS O INNER JOIN SYSINDEXES I ON O.id = I.id
WHERE O.xtype = ''U'' AND I.indid < 2
ORDER BY I.rows DESC, O.name ASC
END'
EXEC sp_MSForEachDB 'Use [?];
-- 시스템 데이터베이스 제외
IF DB_ID(''?'') > 4
BEGIN
SELECT ''?'' AS ''Database'', O.name, I.rows FROM SYSOBJECTS O INNER JOIN SYSINDEXES I ON O.id = I.id
WHERE O.xtype = ''U'' AND I.indid < 2
ORDER BY I.rows DESC, O.name ASC
END'
쿼리 실행 결과는 아래와 같습니다.
[참고자료]
sp_MSforeachdb, sp_MSforeachtable 프로시저 활용
http://laigo.kr/307
'연구개발 > DBA' 카테고리의 다른 글
에러메시지 (0) | 2012.03.05 |
---|---|
SQL Server 2005의 데이터베이스 미러링 (0) | 2012.02.29 |
sa 비밀번호도 잊어먹고.. 윈도우 인증도 막아놨다면??.. (0) | 2012.02.20 |
유용한 MS-SQL 사이트.. (0) | 2012.02.15 |
소규모 프로젝트를 위한 데이터베이스 모델링과 설계 (0) | 2012.02.12 |