Tamaño de las tablas de una BD

15/09/2004 - 17:50 por Jorge | Informe spam
hola, tengo un sql2000, como podria saber el tamaño de
cada tabla de una base de datos??? si se puede hacer
mediante una select, como seria la instruccion??

Saludos y gracias anticipadas.

Jorge

Preguntas similare

Leer las respuestas

#1 Rubén Vigón
15/09/2004 - 18:01 | Informe spam
EXEC sp_MSforeachtable @command1 = "sp_spaceused '?'"

Un saludo!

Rubén Vigón
Microsoft MVP Visual Basic
http://www.mvp-access.com/rubenvigon
Respuesta Responder a este mensaje
#2 ulises
15/09/2004 - 18:07 | Informe spam
Puedes usar

sp_spaceused nombretabla

y obtiene el espacio reservado y usado por una tabla en particular, si
deseas ejecutarlo para todas las tablas de una BD puedes usar el
procedimicento sp_MSforeachtable

sp_MSforeachtable 'sp_spaceused ''?'''

Saludos,
Ulises

On Wed, 15 Sep 2004 08:50:02 -0700, "Jorge"
wrote:

hola, tengo un sql2000, como podria saber el tamaño de
cada tabla de una base de datos??? si se puede hacer
mediante una select, como seria la instruccion??

Saludos y gracias anticipadas.

Jorge
Respuesta Responder a este mensaje
#3 Tinoco
15/09/2004 - 19:00 | Informe spam
Hola Jorge, tambien puedes ver el tamaño de las tablas
por el Enterprise Manager, por la opcion de vista
[TaskPad].

Hermilson T.

hola, tengo un sql2000, como podria saber el tamaño de
cada tabla de una base de datos??? si se puede hacer
mediante una select, como seria la instruccion??

Saludos y gracias anticipadas.

Jorge
Respuesta Responder a este mensaje
#4 Javier Loria
16/09/2004 - 01:50 | Informe spam
Hola:
Si quieres un SELECT, podrias usar las tablas de sistema pero trata de
no dejar este codigo en una aplicacion ya que es probable que tenga
problemas con las diferentes versiones de SQL.
=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 BYsysobjects.name
= Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda

"Jorge" wrote in message
news:2bdd01c49b3b$a9f49250$
hola, tengo un sql2000, como podria saber el tamaño de
cada tabla de una base de datos??? si se puede hacer
mediante una select, como seria la instruccion??

Saludos y gracias anticipadas.

Jorge
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida