Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Express com serviços avançados, não pode criar índice de texto completo


Você não pode fazer isso através do assistente, porque existem alguns bugs. Mesmo que eu optasse por não rastrear as alterações e não preencher o índice quando terminasse, ainda recebi um erro sobre o SQL Agent:

Apesar do erro, consegui prosseguir, mas em uma etapa posterior, finalmente recebi o erro que você recebeu. No entanto, não tive nenhum problema em fazer o seguinte em DDL:
CREATE TABLE dbo.x
(
  x NVARCHAR(255) NOT NULL CONSTRAINT uq_x UNIQUE(x)
);
GO
CREATE FULLTEXT CATALOG x_catalog;
GO
CREATE FULLTEXT INDEX 
  ON dbo.x(x LANGUAGE 1033) 
  KEY INDEX uq_x ON x_catalog; 
GO

Isso mostra que o Express certamente suporta Full-Text, é apenas a interface do usuário que está um pouco confusa. Suspeito que não saiba dizer qual versão do Express você realmente está executando.

Portanto, a curto prazo, eu recomendaria usar DDL em vez da interface do usuário. Na verdade, como a interface do usuário parece apenas tropeçar na criação do catálogo, você pode usar a interface do usuário para criar os índices se primeiro criar o catálogo via DDL...
CREATE FULLTEXT CATALOG x_catalog;

... e, em seguida, escolha esse catálogo ao percorrer o assistente, em vez de criar um novo. Claro que você também terá que ignorar a exceção referente ao SQL Server Agent, mas isso não interrompe o assistente, basta clicar em OK e ignorá-lo.

Enviei um item do Connect para o Management Studio, vote nele e esperamos que isso seja corrigido :

Não sei se esse item foi resolvido ou se passou para o novo sistema de feedback. Eu começou a pesquisá-lo mas boa sorte.