web-dev-qa-db-fra.com

Express avec services avancés, impossible de créer un index de texte intégral

J'ai installé SQL Server 2012 Express Edition Advanced Services qui indique qu'il inclut l'indexation de texte intégral. Voici un lien qui indique ceci:

http://msdn.Microsoft.com/en-us/library/cc645993.aspx

J'ai confirmé que le service de texte intégral est en cours d'exécution, mais lorsque j'essaie de créer un catalogue de texte intégral, il échoue. Je reçois le message "Le texte intégral n'est pas pris en charge sur cette édition de SQL Server. (Microsoft.SqlServer.Smo)"

Quelqu'un a des idées?

25
TreK

Vous ne pouvez pas faire cela via l'assistant, car il y a quelques bogues. Même si j'ai choisi de ne pas suivre les modifications et de ne pas remplir l'index une fois terminé, j'ai toujours une erreur concernant SQL Agent:

Impossible de charger le texte intégral 'Sélectionner ou créer des horaires de population' Wizard form.
L'agent SQL Server n'est pas pris en charge sur cette édition de SQL Server. (Microsoft.SqlServer.Smo)

Malgré l'erreur, j'ai pu continuer, mais à une étape ultérieure, j'ai finalement reçu l'erreur que vous avez faite. Cependant, je n'ai eu aucun problème à faire ce qui suit dans 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

Cela montre qu'Express prend certainement en charge le texte intégral, c'est juste l'interface utilisateur qui est un peu confuse. Je soupçonne qu'il ne sait pas comment dire quelle version d'Express vous utilisez réellement.

Donc, à court terme, je recommanderais d'utiliser DDL au lieu de l'interface utilisateur. En fait, comme l'interface utilisateur ne semble se déclencher que lors de la création du catalogue, vous pouvez utiliser l'interface utilisateur pour créer les index si vous créez d'abord le catalogue via DDL ...

CREATE FULLTEXT CATALOG x_catalog;

... puis choisissez ce catalogue lorsque vous parcourez l'assistant, au lieu d'en créer un nouveau. Bien sûr, vous devrez également ignorer l'exception concernant SQL Server Agent, mais cela n'arrête pas l'assistant, vous pouvez simplement cliquer sur OK et l'ignorer.

J'ai déposé un élément Connect contre Management Studio, veuillez voter pour cela et j'espère que cela sera corrigé:

http://connect.Microsoft.com/SQLServer/feedback/details/740181/management-studio-does-not-fully-manage-full-text-in-sql-server-express

40
Aaron Bertrand