Erreur SQL: "Impossible d'utiliser la search en text intégral dans l'instance user".

J'utilise SSEUtil pour créer automatiquement une database de test fonctionnelle à partir du schéma dérivé de ma database de développement (SQL Server 2008 R2) dans le cadre de mon process de génération. Cela me permet de garder les deux bases de données in-sync (au niveau du schéma) sans exécuter de tests de référentiel SQL par rapport à ma database de développement.

J'ai récemment ajouté un index de text intégral à une table pour ce projet dans mon schéma de développement et maintenant quand j'essaie d'appliquer le schéma à une database de tests unitaires nouvellement créée, j'obtiens l'erreur suivante quand il exécute le SQL pour créer le catalogue de text intégral:

CREATE FULLTEXT CATALOG [FullTextCatalog] AUTHORIZATION [dbo] GO 

Impossible d'utiliser la search en text intégral dans l'instance user.
[SqlException Numéro 9982, Classe 16, État 100, Ligne 1]

J'ai cherché haut et bas. La seule aide que j'ai trouvée était sur un autre site où quelqu'un suggérait de "s'attacher à la database parente". Je n'ai aucune idée de ce que ça veut dire. Et je n'ai aucune idée de ce que cette erreur signifie. Qu'est-ce qu'une "instance d'user"?

Quelqu'un peut-il suggérer un moyen de contourner cela? Existe-t-il une meilleure façon de synchroniser deux schémas de database pour une continuous integration?

Non plus

L'user doit posséder l'autorisation CREATE FULLTEXT CATALOG sur la database ou être membre des rôles de database fixe db_owner ou db_ddladmin.

ou

vous ne pourrez pas utiliser les catalogues de text intégral si l'instance SQL ne l'a pas installé. Assurez-vous que l'instance de server SQL a le service de text intégral en cours d'exécution.

Voici deux façons de tester si cette fonctionnalité est installée ou non. Cette fonctionnalité est disponible pour toutes les éditions de SQL Server 2005 et 2008 (y compris SQL Express)

  1. Vérifiez l'applet de services (exécutez -> tapez 'services.msc') pour cette input: search FullText SQL Server ou search FullText SQL Server (SQLEXPRESS) (dans le cas de SQL Express). Démarrer ce service de non-exécution

  2. Exécutez la requête "select fulltextserviceproperty ('isfulltextinstalled')" dans l'parsingur de requêtes. Si le résultat est '1', alors il est installé ailleurs.

En cas d'indisponibilité de cette fonctionnalité, vous devez procéder à l'installation en téléchargeant le file "SQLEXPR_ADV.EXE" à l' adresse http://www.microsoft.com/express/sql/download/default.aspx

Référence prise d'ici

Ce n'est pas vraiment une réponse à la question, mais je suis tombé sur un problème similaire avec Visual Studio Package Manager lors de la mise à jour d'une database d'infrastructure code d'abord (command update-database ).

Le problème était que j'avais sélectionné le mauvais projet de démarrage, et que Visual Studio n'utilisait pas du tout ma string de connection. Il se connectait à une instance localdb, d'où le message d'erreur cryptique "ne peut pas utiliser la search de text intégral dans l'instance de l'user". Une fois que je l'ai fait se connecter à la database réelle, cela a fonctionné comme prévu.