Tablas

24/05/2007 - 00:47 por Carlos Garza | Informe spam
Buenas Tardes...

Se puede saber el tamaño de las tablas en relacion con el tamaño total de la
base de datos.
Es posible saber que tablas ya no se estan utilizando y optar por
eliminarlas...

De antemano muchas gracias.
 

Leer las respuestas

#1 Isaias
24/05/2007 - 00:57 | Informe spam
Tamaño de tablas:

select sysobjects.name
, sum(case when sysindexes.indid<2 then rows
else 0 end) as rows
, sum(case when sysindexes.indid in (0,1,255) then sysindexes.reserved
else 0 end) * 8 as reserved
, sum(case when sysindexes.indid in (0,1) then sysindexes.dpages
when sysindexes.indid%5 then sysindexes.used
else 0 end) * 8 as Data
, (sum(case when sysindexes.indid in (0,1,255) then sysindexes.used
else 0 end)
- sum(case when sysindexes.indid in (0,1) then sysindexes.dpages
when sysindexes.indid%5 then sysindexes.used
else 0 end))*8 as index_size
, (sum(case when sysindexes.indid in (0,1,255) then
sysindexes.reserved-sysindexes.used
else 0 end)*8) as unused
from sysobjects
join sysindexes
on sysobjects.id=sysindexes.id
where xtype='U'
group by sysobjects.name
order by 2 desc

Tamaño de Bases:

USE MASTER
DECLARE @DBName SYSNAME
DECLARE @SQLCmd NVARCHAR(2000)
SET @DBName = ' '
WHILE @DBName IS NOT NULL
BEGIN
SELECT @DBName = MIN(NAME) FROM MASTER..SYSDATABASES WHERE NAME > @DBName
SET @SQLCmd = N'SELECT ''SELECT NAME AS [File],
filename as [File Name],
CAST(SIZE/128.0 AS DECIMAL(10,2)) AS [Size in MB],
CAST(FILEPROPERTY(name, ''''SpaceUsed'''')/128.0 as
DECIMAL(10,2)) AS [Space Used],
CAST(SIZE/128.0-(FILEPROPERTY(name,
''''SpaceUsed'''')/128.0) as DECIMAL(10,2)) AS
[Available Space] FROM SYSFILES'''
IF @DBName IS NULL BREAK
EXEC MASTER.dbo.XP_EXECRESULTSET @SQLCmd, @DBName
END

Saludos
IIslas


"Carlos Garza" wrote:

Buenas Tardes...

Se puede saber el tamaño de las tablas en relacion con el tamaño total de la
base de datos.
Es posible saber que tablas ya no se estan utilizando y optar por
eliminarlas...

De antemano muchas gracias.



Preguntas similares