Avatar billede chuf Nybegynder
25. februar 2004 - 11:29 Der er 4 kommentarer og
1 løsning

Størrelsen på de enkelte tabeller

Er det muligt at få en oversigt over hvilke tabeller, der fylder hvor meget?
Jeg har en database, der på 8 dage er blevet uforholdsmæssig stor og kunne derfor godt tænke mig at se hvilke tabeller, der fylder ekstremt meget...

Mange tak
Avatar billede bennytordrup Nybegynder
25. februar 2004 - 11:35 #1
Det kan du via Enterprise Manager. Du skal markere databasen og derefter vælge visningen TaskPad
Avatar billede chuf Nybegynder
25. februar 2004 - 11:43 #2
Det er en ret stor database med mange tabeller. Er det muligt at få en samlet liste, der kan sorteres? Query Manager f.eks?
Avatar billede bennytordrup Nybegynder
25. februar 2004 - 12:41 #3
Følgende script til Query Analyzer vil give dig dit resultat. Kolonnerne Reserved, Data, Index_Size og Unused er i KB.


<SQL>
declare curTables cursor fast_forward for   
select        Table_Name
from        Information_Schema.Tables
where        Table_Type = 'BASE TABLE'
order by    Table_Name

create table #SizeInfo
(
    [Name]            nvarchar(60),
    [Rows]            char(11),
    [Reserved]        varchar(11),
    [Data]            varchar(11),
    [Index_Size]    varchar(11),
    [Unused]        varchar(11)
)

declare @tab sysname
open curTables
fetch next from curTables into @tab

while @@fetch_status = 0 begin

    insert #SizeInfo
    exec sp_spaceused @tab
    fetch next from curTables into @tab
end

close curTables
deallocate curTables

select        *
from        (    select    Name,
                        cast(Rows as int) as Rows,
                        cast(SubString(Reserved, 1, len(Reserved)-3) as int) as Reserved,
                        cast(SubString(Data, 1, len(Data)-3) as int) as Data,
                        cast(SubString(Index_Size, 1, len(Index_Size)-3) as int) as Index_Size,
                        cast(SubString(Unused, 1, len(Unused)-3) as int) as Unused
                from    #SizeInfo
            ) X
order by Data desc

drop table #SizeInfo
</SQL>


Selve sorteringen sker i den sidste Order By.
Avatar billede chuf Nybegynder
25. februar 2004 - 12:48 #4
OK; troede måske, der var en nemmere metode. Men tak for hjælpen. :o)
Avatar billede bennytordrup Nybegynder
25. februar 2004 - 13:00 #5
Jeg kunne ikke finde nogen nemmere metode.

Men det gør ikke noget. Jeg kan selv bruge scriptet til at lave noget lir i vores program :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester