DB사용량 조회
페이지 정보
작성자 서방님 댓글 0건 조회 122회 작성일 07-07-09 16:16본문
USE MASTER
DECLARE @DB_NAME VARCHAR(256)
DECLARE @SQL VARCHAR(4000)
--
create table #temp(db_name varchar(255),table_name varchar(255),row_count int,usedbyte int)
DECLARE CUR_CURSOR CURSOR
FOR SELECT A.NAME
FROM SYSDATABASES A WITH (NOLOCK)
OPEN CUR_CURSOR
FETCH NEXT FROM CUR_CURSOR
INTO @DB_NAME
WHILE @@FETCH_STATUS = 0
BEGIN
--조회하고 싶은 테이블만
SET @SQL ='
SELECT ''' + @DB_NAME + ''' ,T2.NAME, MAX(ROWCNT) ROWCNT, SUM(USED) * 8 USEDKBYTE
FROM [' + @DB_NAME + '].DBO.SYSINDEXES T1
INNER JOIN [' + @DB_NAME + '].DBO.SYSOBJECTS T2 ON T1.ID = T2.ID
WHERE T2.XTYPE = ''U''
AND T2.NAME LIKE ''TB_ITEM_DOCUMENT''
GROUP BY T2.NAME
having MAX(ROWCNT) > 0
ORDER BY USEDKBYTE DESC
'
insert into #temp
exec( @SQL)
FETCH NEXT FROM CUR_CURSOR
INTO @DB_NAME
END
select * from #temp order by row_count desc
drop table #temp
CLOSE CUR_CURSOR
DEALLOCATE CUR_CURSOR
댓글목록
등록된 댓글이 없습니다.