Partilhar via


Definir opções de índice

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Banco 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 opções a seguir são aplicadas imediatamente 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 opções a seguir podem ser definidas quando você reconstrói 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 (somente CREATE INDEX).

Segurança

Permissões

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

Como usar 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 ao lado do banco de dados que contém a tabela na qual você 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 mouse na tabela em que você deseja modificar as propriedades de um índice e selecione Design.
  4. No menu Designer de Tabela , clique em Índices/Chaves.
  5. Selecione o índice a ser modificado. Suas propriedades aparecerão na grade principal.
  6. Altere as configurações de alguma ou de todas as 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 ao lado do banco de dados que contém a tabela na qual você 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 do índice.
  4. Clique no sinal de adição para expandir a pasta Índices .
  5. Clique com o botão direito do mouse no índice cujas propriedades serão modificadas e selecione Propriedades.
  6. Em Selecione uma página, selecione Opções.
  7. Altere as configurações de alguma ou de todas as 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 – nome_do_índice. Para obter mais informações, consulte Index Properties F1 Help

Usando o 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

O exemplo a seguir define as propriedades dos índices em um 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 mais informações, consulte ALTERAR ÍNDICE (Transact-SQL).