Se si ha la ncessità di trovare il numero di righe, colonne, dimensioni in byte di tutte le tabelle all'interno di un database senza dover aprire ogni tabella a mano, si può utilizzare lo script qui sotto, che interrogando le tabelle di sistema popola una tabella temporanea con tutti i dati sopra riportati.

 

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

 

 

 

 

Vota questo post per primo

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Post correlati

Commenti: 1

Commenti chiusi

Advanced Technology

Abruzzo SEO specialist, .Net programming and computer stuff