SQL Server 2005でデータベースメタデータをすばやく報告する方法はありますか?
-
19-08-2019 - |
質問
SQL Server 2005のデータベース自体の統計とメタデータをレポートするシステムストアドプロシージャはありますか?
必要なのは、テーブルのリスト、各テーブルのサイズ、各テーブルの行数などをすばやく出力する方法です。個々のテーブルとメタデータのストアドプロシージャも役立ちます。
アドバイスありがとうございます。
解決
はい、データディクショナリテーブルでこれを行うことができます。データディクショナリのメインテーブルは、 sys.objects 、 sys.columns 、 sys.indexes 、 sys.foreign_keys および sys.sql_modules 。システムデータディクショナリを使用してデータベースをSQLスクリプトにリバースエンジニアリングするさまざまなクエリの例については、このstackoverflowの投稿。
データディクショナリからのスペース使用量の取得はもう少し複雑ですが、 sp_spaceused は1つのテーブルに対して実行します。これを
他のヒント
システムビュー、特にinformation_schema.tablesを見てください。これらのprocは、探している多くのデータも取得します。
sp_helpdb dbname
sp_help objectname
sp_spaceused tablename
sysobjects
などのテーブルを直接クエリする代わりに、INFORMATION_SCHEMA
ビューを使用できます。
実際、SQL SErver2000
はSQL 2005
のテーブルでしたが、view
では<=>として実装され、下位互換性を維持するために保持されます。
所属していません StackOverflow