Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
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