15

ほとんどの人はGUI(右クリックテーブル、プロパティ)を介してこれを行う方法を知っていると思いますが、T-SQLでこれを行うことは完全に困難です。

4

3 に答える 3

13
CREATE TABLE #tmpSizeChar(
     table_name sysname、
     row_count int、
     reserved_size varchar(50)、
     data_size varchar(50)、
     index_size varchar(50)、
     used_size varchar(50))                              

CREATE TABLE #tmpSizeInt(
     table_name sysname、
     row_count int、
     reserved_size_KB int、
     data_size_KB int、
     index_size_KB int、
     used_size_KB int)   

カウントをオンに設定
INSERT #tmpSizeChar
EXEC sp_msforeachtable'sp_spaceused''?'''     

INSERT INTO #tmpSizeInt(
        table_name、
        row_count、
        reserved_size_KB、
        data_size_KB、
        index_size_KB、
        used_size_KB
        )。
SELECT [table_name]、
        row_count、
        CAST(SUBSTRING(reserved_size、0、PATINDEX('%%'、reserved_size))AS int)reserved_size、
        CAST(SUBSTRING(data_size、0、PATINDEX('%%'、data_size))AS int)data_size、
        CAST(SUBSTRING(index_size、0、PATINDEX('%%'、index_size))AS int)index_size、
        CAST(SUBSTRING(unused_size、0、PATINDEX('%%'、unused_size))AS int)unused_size
FROM #tmpSizeChar   

/ *
ドロップテーブル#tmpSizeChar
ドロップテーブル#tmpSizeInt
* /

SELECT * FROM #tmpSizeInt
reserved_size_KBDESCによる注文
于 2008-08-05T19:11:11.453 に答える
0

これをチェックしてください。2005年に動作することがわかっています(Microsoft Documentation):

居酒屋DBはこちら


select *
from pubs.sys.database_files

サイズと max_size を返します。

于 2008-08-05T19:16:19.133 に答える