Partilhar via


Definir opções de índice

Aplica-se a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBase de dados SQL no Microsoft Fabric

Este tópico descreve como modificar as propriedades de um índice no SQL Server usando o SQL Server Management Studio ou o Transact-SQL.

Neste artigo

Antes de começar

Limitações e Restrições

  • As seguintes opções são imediatamente aplicadas ao índice usando a cláusula SET na instrução ALTER INDEX: ALLOW_PAGE_LOCKS, ALLOW_ROW_LOCKS, OPTIMIZE_FOR_SEQUENTIAL_KEY, IGNORE_DUP_KEY e STATISTICS_NORECOMPUTE.
  • As seguintes opções podem ser definidas quando se recria um índice usando ALTER INDEX REBUILD ou CREATE INDEX WITH DROP_EXISTING: PAD_INDEX, FILLFACTOR, SORT_IN_TEMPDB, IGNORE_DUP_KEY, STATISTICS_NORECOMPUTE, ONLINE, ALLOW_ROW_LOCKS, ALLOW_PAGE_LOCKS, MAXDOP e DROP_EXISTING (apenas CREATE INDEX).

Segurança

Permissions

Requer permissão ALTER na tabela ou exibição.

Usando o SQL Server Management Studio

Para modificar as propriedades de um índice no Designer de Tabela

  1. No Pesquisador de Objetos, clique no sinal de adição para expandir o banco de dados que contém a tabela na qual você deseja modificar as propriedades de um índice.
  2. Clique no sinal de adição para expandir a pasta Tabelas.
  3. Clique com o botão direito do rato na tabela na qual pretende modificar as propriedades de um índice e selecione Design.
  4. No menu Designer de Tabela, clique em Índices/Chaves.
  5. Selecione o índice que deseja modificar. Suas propriedades aparecerão na grelha principal.
  6. Altere as configurações de todas e quaisquer propriedades para personalizar o índice.
  7. Clique em Fechar.
  8. No menu Arquivo, selecione Salvartable_name.

Para modificar as propriedades de um índice no Pesquisador de Objetos

  1. No Pesquisador de Objetos, clique no sinal de adição para expandir o banco de dados que contém a tabela na qual você deseja modificar as propriedades de um índice.
  2. Clique no sinal de adição para expandir a pasta Tabelas.
  3. Clique no sinal de adição para expandir a tabela na qual você deseja modificar as propriedades de um índice.
  4. Clique no sinal de mais para expandir a pasta Índices.
  5. Clique com o botão direito do rato no índice cujas propriedades pretende modificar e selecione Propriedades.
  6. Em Selecione uma página, selecione Opções .
  7. Altere as configurações de todas e quaisquer propriedades para personalizar o índice.
  8. Para adicionar, remover ou alterar a posição de uma coluna de índice, selecione a página Geral na caixa de diálogo Propriedades do Índice de -index_name. Para obter mais informações, consulte a Ajuda do Index Properties F1

Usando Transact-SQL

Para ver as propriedades de todos os índices em uma tabela

O exemplo a seguir mostra as propriedades de todos os índices em uma tabela no banco de dados AdventureWorks.

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')
;

Para definir as propriedades de um índice

Os exemplos a seguir definem as propriedades dos índices no banco de dados AdventureWorks.

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
   )
;

Para obter mais informações, consulte ALTER INDEX (Transact-SQL).