Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-databas i Microsoft Fabric
Rapporterar och rättar sidor och radräkningsfel i katalogvisningarna. Dessa felaktigheter kan orsaka felaktiga rapporter om utrymmesanvändning som returneras av systemets sp_spaceused lagrade procedur.
Transact-SQL syntaxkonventioner
Syntax
DBCC UPDATEUSAGE
( { database_name | database_id | 0 }
[ , { table_name | table_id | view_name | view_id }
[ , { index_name | index_id } ] ]
) [ WITH [ NO_INFOMSGS ] [ , ] [ COUNT_ROWS ] ]
Arguments
| database_namedatabase_id | 0
Namnet eller ID:t på databasen för att rapportera och korrigera statistik om utrymmesanvändning. Om 0 anges används den aktuella databasen. Databasnamn måste följa reglerna för identifierare.
table_name | table_id | view_name | view_id
Namnet eller ID:t på tabellen eller den indexerade vyn för att rapportera och korrigera statistik över utrymmesanvändning. Tabell- och vynamn måste följa reglerna för identifierare.
index_id | index_name
ID:t eller namnet på indexet som ska användas. Om det inte specificeras bearbetar satsen alla index för den angivna tabellen eller vyn.
WITH
Tillåter att alternativ kan specificeras.
NO_INFOMSGS
Undertrycker alla informationsmeddelanden.
COUNT_ROWS
Specificerar att kolumnen för radantal uppdateras med den aktuella räkningen av antalet rader i tabellen eller vyn.
Anmärkningar
DBCC UPDATEUSAGE korrigerar rader, använda sidor, reserverade sidor, bladsidor och data-sidantal för varje partition i en tabell eller index. Om det inte finns några felaktigheter i systemtabellerna returneras DBCC UPDATEUSAGE ingen data. Om felaktigheter hittas och rättas och MED NO_INFOMSGS inte används, DBCC UPDATEUSAGE returneras rader och kolumner som uppdateras i systemtabellerna.
DBCC CHECKDB har förbättrats för att upptäcka när sid- eller radräkningar blir negativa. När den upptäcks DBCC CHECKDB innehåller utgången en varning och en rekommendation att köra DBCC UPDATEUSAGE för att åtgärda problemet.
Metodtips
Vi rekommenderar följande:
- Kör
DBCC UPDATEUSAGEinte rutinmässigt, eftersom SQL Server i de flesta fall hanterar metadatan.DBCC UPDATEUSAGEbör köras vid behov, till exempel när du misstänker att felaktiga värden returneras avsp_spaceused.DBCC UPDATEUSAGEDet kan ta tid att köra på stora tabeller eller databaser. - Överväg att köra
DBCC UPDATEUSAGErutinmässigt (till exempel veckovis) endast om databasen genomgår frekventa Data Definition Language (DDL)-ändringar, såsom CREATE, ALTER eller DROP-satser.
Resultatuppsättningar
DBCC UPDATEUSAGE avkastning (värden kan variera):
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
Permissions
Kräver medlemskap i sysadmin fast serverroll eller db_owner fast databasroll.
Examples
A. Uppdateringssida eller radräkningar eller båda för alla objekt i den aktuella databasen
Följande exempel specificerar 0 för databasens namn och DBCC UPDATEUSAGE rapporterar uppdaterad sid- eller radräkningsinformation för den aktuella databasen.
DBCC UPDATEUSAGE (0);
GO
B. Uppdateringssida eller radräkning eller båda för AdventureWorks, samt undertryckning av informationsmeddelanden
Följande exempel specificerar AdventureWorks2025 som databasnamn och undertrycker alla informationsmeddelanden.
DBCC UPDATEUSAGE (AdventureWorks2022) WITH NO_INFOMSGS;
GO
C. Uppdatera sida eller radräkningar eller båda för tabellen Anställda
Följande exempel rapporterar uppdaterad sid- eller radräkningsinformation för Employee tabellen i databasen AdventureWorks2025 .
DBCC UPDATEUSAGE (AdventureWorks2022, 'HumanResources.Employee');
GO
D. Uppdatera sid- eller radräkningar eller båda för ett specifikt index i en tabell
Följande exempel specificerar IX_Employee_ManagerID som indexnamn.
DBCC UPDATEUSAGE (AdventureWorks2022, 'HumanResources.Employee', IX_Employee_OrganizationLevel_OrganizationNode);
GO