SQL错误:"无法在用户实例中使用全文搜索."

Bit*_*ved 8 sql-server sql-server-2008

我正在使用SSEUtil从我的开发数据库(SQL Server 2008 R2)派生的模式中自动创建功能测试数据库,作为构建过程的一部分.这允许我保持两个数据库同步(模式方式)而不对我的开发数据库运行SQL存储库测试.

我最近在我的开发模式中为该项目首次向表添加了一个全文索引,现在当我尝试将模式应用于新创建的单元测试数据库时,我在执行SQL时创建了以下错误全文目录:

CREATE FULLTEXT CATALOG [FullTextCatalog] AUTHORIZATION [dbo]
GO
Run Code Online (Sandbox Code Playgroud)

无法在用户实例中使用全文搜索.
[SqlException Number 9982,Class 16,State 100,Line 1]

我搜索过高低.我找到的唯一帮助是在另一个网站上,有人建议"附加到父数据库".我不知道这意味着什么.我不知道这个错误意味着什么.什么是"用户实例"?

任何人都可以建议解决这个问题吗?有没有更好的方法来保持两个数据库模式同步以进行持续集成?

Rom*_*ain 13

用户必须对数据库具有CREATE FULLTEXT CATALOG权限,或者是db_owner或db_ddladmin固定数据库角色的成员.

要么

如果SQL实例没有安装它,您将无法使用全文目录.确保SQL Server实例已运行全文服务.

以下是测试是否安装此功能的两种方法.此功能适用于所有版本的SQL Server 2005和2008(包括SQL Express)

  1. 检查此条目的服务小程序(运行 - >类型'services.msc'):SQL Server全文搜索或SQL Server全文搜索(SQLEXPRESS)(如果是SQL Express).启动此服务不运行

  2. 在查询分析器中运行查询"select fulltextserviceproperty('isfulltextinstalled')".如果结果是'1',则安装它不是.

如果此功能不可用,则需要从http://www.microsoft.com/express/sql/download/default.aspx下载"SQLEXPR_ADV.EXE"进行安装.

参考文献来自这里