Ange indexalternativ
gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-databas i Microsoft Fabric
Det här avsnittet beskriver hur du ändrar egenskaperna för ett index i SQL Server med hjälp av SQL Server Management Studio eller Transact-SQL.
I den här artikeln
Innan du börjar:
Ändra egenskaperna för ett index med hjälp av:
Innan du börjar
Begränsningar och restriktioner
- Följande alternativ tillämpas omedelbart på indexet med SET-satsen i ALTER INDEX-instruktionen: ALLOW_PAGE_LOCKS, ALLOW_ROW_LOCKS, OPTIMIZE_FOR_SEQUENTIAL_KEY, IGNORE_DUP_KEY och STATISTICS_NORECOMPUTE.
- Följande alternativ kan anges när du återskapar ett index genom att använda ALTER INDEX REBUILD eller CREATE INDEX WITH DROP_EXISTING: PAD_INDEX, FILLFACTOR, SORT_IN_TEMPDB, IGNORE_DUP_KEY, STATISTICS_NORECOMPUTE, ONLINE, ALLOW_ROW_LOCKS, ALLOW_PAGE_LOCKS, MAXDOP och DROP_EXISTING (gäller endast CREATE INDEX).
Säkerhet
Behörigheter
Kräver ALTER-behörighet på tabellen eller vyn.
Använda SQL Server Management Studio
Så här ändrar du egenskaperna för ett index i Tabelldesignern
- I Object Explorer klickar du på plustecknet för att expandera databasen som innehåller tabellen där du vill ändra ett indexs egenskaper.
- Klicka på plustecknet för att expandera mappen Tables.
- Högerklicka på tabellen där du vill ändra ett indexs egenskaper och välj Design.
- På menyn Table Designer klickar du på Index/Nycklar.
- Välj det index som du vill ändra. Dess egenskaper visas i huvudrutnätet.
- Ändra inställningarna för alla egenskaper för att anpassa indexet.
- Klicka på Stäng.
- På menyn Arkiv väljer du Sparatable_name.
Ändra egenskaperna för ett index i Object Explorer
- I Object Explorer klickar du på plustecknet för att expandera databasen som innehåller tabellen där du vill ändra ett indexs egenskaper.
- Klicka på plustecknet för att expandera mappen Tables.
- Klicka på plustecknet för att expandera tabellen där du vill ändra ett indexs egenskaper.
- Klicka på plustecknet för att expandera mappen Index.
- Högerklicka på indexet som du vill ändra egenskaperna för och välj Egenskaper.
- Under Välj en sida, välj Alternativ.
- Ändra inställningarna för alla egenskaper för att anpassa indexet.
- Om du vill lägga till, ta bort eller ändra positionen för en indexkolumn väljer du sidan Allmänt i dialogrutan Indexegenskaper –index_name. Mer information finns i Indexegenskaper F1 Hjälp
Använda Transact-SQL
Så här ser du egenskaperna för alla index i en tabell
I följande exempel visas egenskaperna för alla index i en tabell i AdventureWorks-databasen.
SELECT i.name AS index_name
, i.type_desc
, i.is_unique
, ds.type_desc AS filegroup_or_partition_scheme
, ds.name AS filegroup_or_partition_scheme_name
, i.ignore_dup_key
, i.is_primary_key
, i.is_unique_constraint
, i.fill_factor
, i.is_padded
, i.is_disabled
, i.allow_row_locks
, i.allow_page_locks
, i.has_filter
, i.filter_definition
FROM sys.indexes AS i
INNER JOIN sys.data_spaces AS ds
ON i.data_space_id = ds.data_space_id
WHERE is_hypothetical = 0 AND i.index_id <> 0
AND i.object_id = OBJECT_ID('HumanResources.Employee')
;
Så här anger du egenskaperna för ett index
I följande exempel anges egenskaperna för index i AdventureWorks-databasen.
ALTER INDEX AK_SalesOrderHeader_SalesOrderNumber ON
Sales.SalesOrderHeader
SET (
STATISTICS_NORECOMPUTE = ON,
IGNORE_DUP_KEY = ON,
ALLOW_PAGE_LOCKS = ON
)
;
ALTER INDEX ALL ON Production.Product
REBUILD WITH
(
FILLFACTOR = 80
, SORT_IN_TEMPDB = ON
, STATISTICS_NORECOMPUTE = ON
)
;
Mer information finns i ALTER INDEX (Transact-SQL).