[질문]
DBCC SHOWCONTIG 를 실행했는데 결과가 나오지 않는데 이유가 뭘까요?
테이블에 인덱스가 없어서인가요?
[답변]
테이블에 데이터가 없으면 결과가 나오지 않습니다. 인덱스가 있건 없건 상관없이 데이터가 없으면 결과 행이 반환되지 않고 데이터가 한 건이라도 있으면 결과 행들이 반환됩니다.
SQL Server 2000에서는 다음과 같이 테이블에 행이 한 건도 없으면 "DBCC 실행이 완료되었습니다. DBCC에서 오류 메시지를 출력하면 시스템 관리자에게 문의하십시오." 라는 메시지만 반환되고 결과 행은 반환되지 않았습니다.
USE tempdb
GO
CREATE TABLE t1 (c1 int PRIMARY KEY)
GO
DBCC SHOWCONTIG ('t1')
GO
/*
DBCC 실행이완료되었습니다. DBCC에서오류메시지를출력하면시스템관리자에게문의하십시오.
*/
SQL Server 2005에서는테이블에데이터가없어도결과행이반환되는군요.
이제헷갈리는분들이줄어들겠네요. ^ ^
USE tempdb
GO
CREATE TABLE t1 (c1 int PRIMARY KEY)
GO
DBCC SHOWCONTIG ('t1')
GO
/* 결과
DBCC SHOWCONTIG이(가) 't1' 테이블을검색하는중...
테이블: 't1'(165575628); 인덱스ID: 1, 데이터베이스ID: 2
TABLE 수준검색을수행했습니다.
- 검색한페이지................................: 0
- 검색한익스텐트..............................: 0
- 익스텐트스위치..............................: 0
- 익스텐트당평균페이지수........................: 0.0
- 검색밀도[최적:실제].......: 100.00% [
- 논리검색조각화상태..................: 0.00%
- 익스텐트검색조각화상태...................: 0.00%
- 페이지당사용가능한평균바이트수.....................: 0.0
- 평균페이지밀도(전체).....................: 0.00%
DBCC 실행이완료되었습니다. DBCC에서오류메시지를출력하면시스템관리자에게문의하십시오.
*/
'연구개발 > SQL2005' 카테고리의 다른 글
[SQL 2005 GUIDE] tempdb를 사용하는 작업 및 tempdb sizing (0) | 2009.07.24 |
---|---|
[SQL 2005 GUIDE] 로컬 서버 이름 변경하기 (0) | 2009.07.24 |
[SQL 2005 GUIDE] 캐시와 풀 (0) | 2009.07.24 |
[SQL 2005 GUIDE] SQL Server 2005 memory - 1탄 (0) | 2009.07.24 |
[SQL 2005 GUIDE] 큰 값 데이터 형식과 문자열 함수 (0) | 2009.07.24 |