Aracılığıyla paylaş


sp_spaceused (Transact-SQL)

Satır, ayrılan disk alanı ve bir tablo, dizinli görünüm, kullanılan disk alanını görüntüler veya Service Broker Geçerli veritabanı veya disk alanı ayrılmıştır ve tüm veritabanı tarafından kullanılan sıraya'i tıklatın.

Topic link iconTransact-SQL sözdizimi kuralları

sp_spaceused [[ @objname = ] 'objname' ] 
[,[ @updateusage = ] 'updateusage' ]

Bağımsız değişkenler

  • [ @objname=] 'objname'
    Tam veya nonqualified tablosu, dizinli görünüm ve kullanım bilgileri için hangi alanı istenen sıra adıdır.Yalnızca bir nitelenmiş nesne adı belirtilmezse, tırnak işaretleri gereklidir.Veritabanı adı, (bir veritabanı adı dahil) bir tam nitelikli nesne adı belirtilmezse, geçerli veritabanının adı olması gerekir.

    If objname belirtilmemişse, sonuçlar için tüm veritabanını döndürülür.

    objname olan nvarchar(776), varsayılan değeri NULL ile.

  • [ @updateusage=] 'updateusage'
    DBCC UPDATEUSAGE alanı kullanım bilgilerini güncelleştirmeye çalışması gereken gösterir.Ne zaman objname olduğundan deyim tüm veritabanında çalıştırılan; deyim aksi halde, çalışan belirtilmedi. objname. Values can be true or false.updateusage is varchar(5), with a default of false.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (hata)

Sonuç Kümeleri

If objname olan atlanırsa aşağıdaki sonuç kümelerini geçerli veritabanı boyut bilgileri sağlamak için döndürülür.

Sütun adı

Veri türü

Açıklama

veritabanı_adı

nvarchar(128)

Geçerli veritabanının adı.

database_size

varchar(18)

Size of the current database in megabytes.database_size includes both data and log files.

ayrılmamış

varchar(18)

Veritabanı nesneleri için rezerve veritabanında yer.

Sütun adı

Veri türü

Açıklama

rezerve

varchar(18)

Veritabanındaki nesneler tarafından ayrılan alan toplam miktarı.

veri

varchar(18)

Verileri tarafından kullanılan alan toplam miktarı.

index_size

varchar(18)

Dizinler tarafından kullanılan alan toplam miktarı.

Kullanılmayan

varchar(18)

Veritabanındaki nesneler için ayrılmıştır, ancak henüz kullanılan alan toplam miktarı.

If objname , belirtilen nesne için döndürülen aşağıdaki sonuç kümesinden belirtildi.

Sütun adı

Veri türü

Açıklama

adı

nvarchar(128)

Hangi alan kullanım bilgileri istendi nesnenin adı.

Nesnenin Şema adı verilir.Şema adı gerekli ise, sys.dm_db_partition_stats or sys.dm_db_index_physical_stats dinamik yönetimi görünümleri eşdeğeri olan boyut bilgilerini almak için.

satırlar

char(11)

Içinde varolan satırların sayısını tablo.Belirtilen nesne bir Service Broker sıra, bu sütun sıradaki iletilerin sayısını gösterir.

rezerve

varchar(18)

Rezerve edilen alan toplam miktarı objname.

veri

varchar(18)

Verileri tarafından kullanılan alan toplam miktarı objname.

index_size

varchar(18)

Dizinler tarafından kullanılan alan toplam miktarı objname.

Kullanılmayan

varchar(18)

Ayrılmış alan toplam miktarı objname ancak henüz kullanılır.

Remarks

database_size toplamı büyük her zaman olurrezerve + ayrılmamış ancak günlük dosyalarının boyutunu içerdiğindenrezerve and unallocated_space veri sayfalarında göz önünde bulundurun.

XML dizinler ve tam metin dizinleri tarafından kullanılan sayfaların yer index_size iki sonuç kümeleri için.Ne zaman objname , XML dizin ve nesne için tam metin dizinleriyle sayfaları da toplam olarak sayılır belirtilir rezerve and index_size oluşur.

Alan kullanımı, bir veritabanı veya alan boyutunu sütunlar, bir kayma dizini gibi sahip bir nesne için hesaplanıp hesaplanmayacağını database_size, rezerve, and index_size kayma dizin boyutunu içerir.

Ne zaman updateusage Belirtilen SQL Server Database Engine verilerin veritabanındaki sayfaları ve herhangi bir hale getirir taramalar için düzeltmeler gerekli allocation_units and sys.Partitions katalog görünümleri ilgili her tablo tarafından kullanılan depolama alanı.There are some situations, for example, after an index is dropped, when the space information for the table may not be current.updateusage can take some time to run on large tables or databases.Kullanımı updateusage Yalnızca yanlış şüpheleniyorsanız değerleri döndürdü ve ne zaman işlemi diğer kullanıcılar ve işlemler üzerinde olumsuz bir etkisi veritabanında yoktur. Tercih edilen, DBCC UPDATEUSAGE ayrı olarak çalıştırılabilir.

Not

Bırakma büyük dizinler yeniden veya bırakma veya büyük bir tablo kesecek Database Engine işlem tamamlandıktan sonra kadar gerçek sayfa deallocations ve bunların ilişkili kilitlerin defers. Ertelenen bırak işlemleri ayrılan alan hemen serbest değil.Bu nedenle, döndürülen değerler sp_spaceused bırakarak veya büyük bir nesne kesiliyor hemen sonra gerçek disk alanı kullanılabilir yansıtmaz.Ertelenen ayırma hakkında daha fazla bilgi için bkz: Bırakma ve büyük nesneleri yeniden oluşturma.

İzinler

yürütmek izni sp_spaceused için verilirOrtak roldür.Yalnızca üyeleri db_owner sabit veritabanı rolü belirtin**@ updateusage** parametresi.

Örnekler

C.Disk alanı tablosu bilgilerini görüntüleme

Disk alanı bilgileri için aşağıdaki örnek raporlar Vendor Tablo ve alt dizinleri.

USE AdventureWorks;
GO
EXEC sp_spaceused N'Purchasing.Vendor';
GO

b.Bir veritabanı hakkında güncelleştirilmiş alan bilgilerini görüntüleme

Aşağıdaki örnek geçerli veritabanındaki kullanılan alan özetler ve isteğe bağlı parametre kullanır. @updateusage emin olmak için geçerli değerler döndürülür.

USE AdventureWorks;
GO
EXEC sp_spaceused @updateusage = N'TRUE';
GO