SQL Server 2005에서 데이터베이스 메타데이터를 보고하는 빠른 방법이 있습니까?

StackOverflow https://stackoverflow.com/questions/454986

문제

SQL Server 2005에서 데이터베이스 자체의 통계 및 메타데이터를 보고하는 시스템 저장 프로세스가 있습니까?

나에게 필요한 것은 테이블 목록, 각 테이블의 크기, 각 테이블의 행 수 등을 출력하는 빠른 방법입니다.개별 테이블 및 메타데이터에 대한 저장된 프로세스도 유용합니다.

조언을 부탁드립니다.

도움이 되었습니까?

해결책

예, 데이터 사전 테이블을 사용하면 이를 수행할 수 있습니다.데이터 사전의 주요 테이블은 다음과 같습니다. sys.objects, sys.columns, sys.indexes, sys.foreign_keys 그리고 sys.sql_modules.시스템 데이터 사전을 사용하여 데이터베이스를 SQL 스크립트로 리버스 엔지니어링하는 다양한 쿼리의 예를 보려면 다음을 살펴보세요. 이 stackoverflow 게시물.

공간 사용량을 얻는 것은 데이터 사전에서 수행하는 것보다 조금 더 복잡하지만 sp_spaceused 단일 테이블에 대해 수행합니다.이걸로 포장하면 돼요 sp_msforeachtable 일련의 테이블을 반복하고 모든 테이블에 대한 보고서를 얻습니다.

다른 팁

시스템보기, 특히 information_schema.tables를 살펴보십시오. 이 Procs는 또한 당신이 찾고있는 많은 데이터를 얻을 것입니다.

sp_helpdb dbname
sp_help objectname
sp_spaceused tablename

쿼리하는 대신 sysobjects 등 ... 테이블을 직접 사용할 수 있습니다 INFORMATION_SCHEMA 보다.

사실, sysobjects 테이블이었다 SQL SErver2000, 그러나하지만 SQL 2005, 그것은 a로 구현됩니다 view, 그리고 그것은 후진 호환성을 보존해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top