Pavel Novotný

.NET Framework, SharePoint, Dynamics CRM, RC Helicopters, Honda VFR CrossRunner

SQL Server: zobrazení počtu řádků, sloupců, velikosti tabulek v KB přes všechny tabulky v databázi

Úžasný script pro zobrazení přehledných statistický informací o databázi, zejména pokud hledáte největší tabulky v neznámé struktuře databáze:

image

USE DatabaseName 
GO 
CREATE TABLE #temp ( 
table_name sysname , 
row_count INT, 
reserved_size VARCHAR(50), 
data_size VARCHAR(50), 
index_size VARCHAR(50), 
unused_size VARCHAR(50)) 
SET NOCOUNT ON 
INSERT #temp 
EXEC sp_msforeachtable 'sp_spaceused ''?''' 
SELECT a.table_name, 
a.row_count, 
COUNT(*) AS col_count, 
a.data_size 
FROM #temp a 
INNER JOIN information_schema.columns b 
ON a.table_name collate database_default 
= b.table_name collate database_default 
GROUP BY a.table_name, a.row_count, a.data_size 
ORDER BY CAST(REPLACE(a.data_size, ' KB', '') AS integer) DESC 
DROP TABLE #temp

 

Zdroj:

http://blog.sqlauthority.com/2007/01/10/sql-server-query-to-find-number-rows-columns-bytesize-for-each-table-in-the-current-database-find-biggest-table-in-database/

Komentáře (4) -

  • miroslav

    19. 8. 2014 13:04:32 | Odpovědět

    Vadou na kráse je skutečnost, že se grupují různá "schema name".

  • Nuninek

    23. 6. 2015 16:46:00 | Odpovědět

    Zdravim nemate nekdo ten script co ma byt uveden pod linkem ktery poslal Miroslav, link je jiz nefunkcni a potrebuji zjistit velikost DB a zbyvajici misto. Diky Vlada

Přidat komentář

Loading