Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este tópico descreve como habilitar um índice desabilitado no SQL Server 2014 usando o SQL Server Management Studio ou o Transact-SQL. Depois que um índice é desabilitado, ele permanece em um estado desabilitado até ser recriado ou descartado
Nesse Tópico
Antes de começar:
Para habilitar um índice desabilitado usando:
Antes de começar
Limitações e restrições
Depois de recompilar o índice, todas as restrições que foram desabilitadas devido à desabilitação do índice devem ser habilitadas manualmente. As restrições PRIMARY KEY e UNIQUE são habilitadas recriando o índice associado. Esse índice deve ser recriado (habilitado) antes de habilitar restrições FOREIGN KEY que fazem referência à restrição PRIMARY KEY ou UNIQUE. As restrições de FOREIGN KEY são habilitadas usando a instrução ALTER TABLE CHECK CONSTRAINT.
A recriação de um índice clusterizado desabilitado não pode ser executada quando a opção ONLINE é definida como ON.
Quando o índice clusterizado está desabilitado ou habilitado e o índice não clusterizado é desabilitado, a ação de índice clusterizado tem os seguintes resultados no índice não clusterizado desabilitado.
Ação de índice clusterizado Índice não clusterizado desabilitado... ALTERAR ÍNDICE RECONSTRUIR. Permanece desabilitado. ALTERAR TODOS OS ÍNDICES RECONSTRUIR. Está refeito e ativado. DROP INDEX. Permanece desabilitado. CRIAR ÍNDICE COM DROP_EXISTING. Permanece desabilitado. A criação de um novo índice clusterizado se comporta da mesma forma que ALTER INDEX ALL REBUILD.
As ações permitidas em índices não clusterizados associados a um índice clusterizado dependem do estado, desabilitado ou habilitado, de ambos os tipos de índice. A tabela a seguir resume as ações permitidas em índices não clusterizados.
Ação de índice não clusterizado Quando os índices clusterizados e não clusterizados são desabilitados. Quando o índice clusterizado está habilitado e o índice não clusterizado está em ambos os estados. ALTERAR ÍNDICE RECONSTRUIR. A ação falha. A ação é bem-sucedida. DROP INDEX. A ação é bem-sucedida. A ação é bem-sucedida. CRIAR ÍNDICE COM DROP_EXISTING. A ação falha. A ação é bem-sucedida.
Segurança
Permissões
Requer a permissão ALTER na tabela ou exibição. Se estiver usando DBCC DBREINDEX, o usuário deverá ser proprietário da tabela ou ser membro da função de servidor fixa sysadmin ou das funções de banco de dados fixas db_ddladmin e db_owner.
Como usar o SQL Server Management Studio.
Para habilitar um índice desabilitado
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 habilitar um índice.
Clique no sinal de mais para expandir a pasta Tabelas.
Clique no sinal de adição para expandir a tabela na qual você deseja habilitar um índice.
Clique no sinal de adição para expandir a pasta Índices.
Clique com o botão direito do mouse no índice que você deseja habilitar e selecione Recompilar.
Na caixa de diálogo Recompilar Índices, verifique se o índice correto está na grade Índices para reconstruir e clique em OK.
Para habilitar todos os índices em uma tabela
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 habilitar os índices.
Clique no sinal de mais para expandir a pasta Tabelas.
Clique no sinal de adição para expandir a tabela na qual você deseja habilitar os índices.
Clique com o botão direito do mouse na pasta Índices e selecione Recompilar Tudo.
Na caixa de diálogo Recompilar Índices, verifique se os índices corretos estão na grade Índices para recompilar e clique em OK. Para remover um índice da grade Índices para recompilar, selecione o índice e pressione a tecla Excluir.
As seguintes informações estão disponíveis na caixa de diálogo Recompilar Índices :
Usando Transact-SQL
Para habilitar um índice desabilitado usando ALTER INDEX
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, clique em Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e clique em Executar.
USE AdventureWorks2012; GO -- Enables the IX_Employee_OrganizationLevel_OrganizationNode index -- on the HumanResources.Employee table. ALTER INDEX IX_Employee_OrganizationLevel_OrganizationNode ON HumanResources.Employee REBUILD; GO
Para habilitar um índice desabilitado usando CREATE INDEX
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, clique em Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e clique em Executar.
USE AdventureWorks2012; GO -- re-creates the IX_Employee_OrganizationLevel_OrganizationNode index -- on the HumanResources.Employee table -- using the OrganizationLevel and OrganizationNode columns -- and then deletes the existing IX_Employee_OrganizationLevel_OrganizationNode index CREATE INDEX IX_Employee_OrganizationLevel_OrganizationNode ON HumanResources.Employee (OrganizationLevel, OrganizationNode) WITH (DROP_EXISTING = ON); GO
Para habilitar um índice desabilitado usando DBCC DBREINDEX
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, clique em Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e clique em Executar.
USE AdventureWorks2012; GO -- enables the IX_Employee_OrganizationLevel_OrganizationNode index -- on the HumanResources.Employee table DBCC DBREINDEX ("HumanResources.Employee", IX_Employee_OrganizationLevel_OrganizationNode); GO
Para habilitar todos os índices em uma tabela usando ALTER INDEX
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, clique em Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e clique em Executar.
USE AdventureWorks2012; GO -- enables all indexes -- on the HumanResources.Employee table ALTER INDEX ALL ON HumanResources.Employee REBUILD; GO
Para habilitar todos os índices em uma tabela usando DBCC DBREINDEX
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, clique em Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e clique em Executar.
USE AdventureWorks2012; GO -- enables all indexes -- on the HumanResources.Employee table DBCC DBREINDEX ("HumanResources.Employee", " "); GO
Para obter mais informações, consulte ALTER INDEX (Transact-SQL), CREATE INDEX (Transact-SQL), e DBCC DBREINDEX (Transact-SQL).