Muszę wiedzieć, ile miejsca na dysku jest za pomocą tabeli w SQL Server

głosy
11

Myślę, że większość ludzi wie, jak to zrobić poprzez GUI (prawy przycisk myszy, właściwości tabeli), ale robi to w T-SQL całkowicie skał.

Utwórz 05/08/2008 o 20:10
źródło użytkownik
W innych językach...                            


3 odpowiedzi

głosy
11

CREATE TABLE #tmpSizeChar (
     table_name sysname,
     ROW_COUNT int,
     VARCHAR reserved_size (50)
     VARCHAR data_size (50)
     VARCHAR index_size (50)
     unused_size VARCHAR (50))                              

CREATE TABLE #tmpSizeInt (
     table_name sysname,
     ROW_COUNT int,
     reserved_size_KB int,
     data_size_KB int,
     index_size_KB int,
     unused_size_KB int)   

SET NOCOUNT ON
INSERT IGNORE #tmpSizeChar
EXEC sp_msforeachtable 'sp_spaceused ''?' ''     

INSERT INTO #tmpSizeInt IGNORUJ (
        Nazwa tabeli,
        Liczba wierszy,
        reserved_size_KB,
        data_size_KB,
        index_size_KB,
        unused_size_KB
        )
SELECT [table_name]
        Liczba wierszy,
        Wlewka (SUBSTRING (reserved_size, 0 PATINDEX ( '%%' reserved_size)) int) reserved_size,
        Obsada (podciągi (data_size, 0 PATINDEX ( '%%' data_size)) int) data_size,
        Obsada (podciągi (index_size, 0 PATINDEX ( '%%' index_size)) int) index_size,
        Obsada (podciągi (unused_size, 0 PATINDEX ( '%%' unused_size)) int) unused_size
Z #tmpSizeChar   

/ *
DROP TABLE #tmpSizeChar
DROP TABLE #tmpSizeInt
* /

SELECT * FROM #tmpSizeInt
ORDER BY reserved_size_KB DESC
Odpowiedział 05/08/2008 o 20:11
źródło użytkownik

głosy
0

sp_spaceused tableName

gdzie tableName to nazwa tabeli chcesz wiedzieć ....

Odpowiedział 14/01/2016 o 16:40
źródło użytkownik

głosy
0

Sprawdź to, wiem, że to działa w 2005 roku ( MSDN Doc ):

Tutaj jest to dla pubów DB


select *
from pubs.sys.database_files

Zwraca rozmiar i MAX_SIZE.

Odpowiedział 05/08/2008 o 20:16
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more