DBCC CLEANTABLE (języka Transact-SQL)
Reclaims miejsca z porzuconych o zmiennej długości kolumn tabel lub widoków indeksowanych.
DBCC CLEANTABLE
(
{ database_name | database_id | 0 }
, { table_name | table_id | view_name | view_id }
[ , batch_size ]
)
[ WITH NO_INFOMSGS ]
Argumenty
database_name| database_id | 0
Jest bazą danych, do której należy tabela czyszczenia.Jeśli określono wartość 0, używana jest bieżąca baza danych.Nazwy bazy danych muszą być zgodne z zasadami identyfikatory.table_name| table_id | view_name| view_id
Jest to tabela lub widok indeksowany czyszczenia.batch_size
To liczba wierszy przetwarzane na transakcję.Jeśli nie zostanie określony, lub jeżeli określono wartość 0, instrukcję przetwarzania całej tabela w jedną transakcję.Z NO_INFOMSGS
Pomija wszystkie komunikaty informacyjne.
Remarks
DBCC CLEANTABLE reclaims miejsce po upuszczeniu kolumna o zmiennej długości.Kolumna o zmiennej długości może mieć jedną z następujących typów danych: varchar, nvarchar, varchar(max), nvarchar(max), varbinary, varbinary(max), text, ntext, image, sql_variant, a xml. Polecenie nie odzyskania miejsca po upuszczeniu kolumna o stałej długości.
Jeśli kolumny porzuconych były przechowywane w wierszu, CLEANTABLE DBCC reclaims miejsca z IN_ROW_DATA jednostka alokacji w tabela.Gdyby przechowywanych poza wiersza, kolumna miejsca odzyskać obszaru rejestrowania ROW_OVERFLOW_DATA lub jednostka alokacji LOB_DATA w zależności od typu danych kolumna elementów usuniętych.Jeśli odzyskiwanie miejsca na podstawie ROW_OVERFLOW_DATA lub LOB_DATA wyniki strona na pustej stronie, CLEANTABLE DBCC usuwa strona.Aby uzyskać więcej informacji na temat jednostek alokacji i typy danych zobacz Tabele i architektura strukturami danych indeksu.
DBCC CLEANTABLE działa jako co najmniej jednej transakcji.Jeśli partia rozmiar nie zostanie określony, polecenie przetwarza całej tabeli w jedną transakcję i tabela jest zablokowana wyłącznie podczas operacji.W niektórych dużych tabel długości jednej transakcji i wymaganego miejsca w dzienniku mogą być zbyt dużej ilości.Jeżeli określono wartość rozmiaru wsadu, to polecenie działa jako seria specyfikacji transakcji, każdy, łącznie z określoną liczbę wierszy.Nie można uruchomić CLEANTABLE DBCC jako transakcja wewnątrz innej transakcji.
Ta operacja jest całkowicie rejestrowane.
DBCC CLEANTABLE nie jest obsługiwana do użytku w tabelach systemowych lub tabel tymczasowych.
Najważniejsze wskazówki
DBCC CLEANTABLE nie powinny być zrealizowane jako zadania rutynowej konserwacji.Zamiast tego należy użyć CLEANTABLE DBCC po wprowadzeniem znaczących zmian do kolumn o zmiennej długości w tabela lub widok indeksowany, jeśli jest konieczne natychmiast odzyskać niewykorzystany obszar.Alternatywnie można ponownie utworzyć indeksy w tabela lub widoku; jednak robić tak operacji bardziej obciąża.
Zestawy wyników
Zwraca CLEANTABLE DBCC:
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
Uprawnienia
Obiekt wywołujący musi tabela lub widok indeksowany, lub być element członkowski z sysadmin stała rola serwera db_owner stałe rola bazy danych lub db_ddladmin stała rola bazy danych.
Przykłady
A.Za pomocą CLEANTABLE DBCC w celu odzyskania miejsca
W poniższym przykładzie wykonywany CLEANTABLE DBCC dla Production.Document Tabela w AdventureWorks Przykładowa baza danych.
B.Za pomocą CLEANTABLE DBCC i weryfikowanie wyniki
Poniższy przykład tworzy i wypełnia tabela o kilka kolumn o zmiennej długości.Dwie kolumny są następnie usuwane i uruchomieniu CLEANTABLE DBCC odzyskać niewykorzystany obszar.Kwerendy jest uruchamiany w celu zweryfikowania liczby strona i miejsce używane wartości przed i po CLEANTABLE DBCC wykonywane jest polecenie.
See Also