使用 SQL 在 SQL Server 中创建全文目录

可以使用 SQL 查询编辑器中的 SQL 命令在 SQL Server 中创建全文目录。

以下步骤介绍了为某个用户或角色授予对特定全文目录的 REFERENCES 权限。如果以后向数据库添加另一个由其他 XML 列使用的全文目录,则必须再次授予对这一新全文目录的 REFERENCES 权限。如果您更喜欢通过其他方式授予此权限,则可跳过下面的相应步骤,而改为将相应的 GRANT 语句发送到数据库。

步骤:
  1. 在“SQL 查询编辑器”窗口中,输入并执行以下查询,以检查数据库是否已启用全文搜索功能。例如,数据库名为 mygdb:
    SELECT DATABASEPROPERTY('mygdb', 'IsFulltextEnabled');
    

    如果返回值 1,则表示数据库已启用全文搜索功能,此时请跳到步骤 7 继续操作。如果返回其他值,则必须使用 Management Studio 为数据库启用全文搜索功能,然后才能继续操作。

  2. 在 SQL Server Management Studio 的“对象资源管理器”中,单击相应 SQL Server 旁的加号 (+),然后单击数据库旁的加号。
  3. 右键单击要创建 XML 列的数据库,然后单击属性
  4. 数据库属性 对话框中,单击左侧选择页面下的文件
  5. 如果使用全文索引尚未选中,则在右侧页面中将其选中。
  6. 在“数据库属性”对话框中,单击确定
  7. 在“SQL 查询编辑器”窗口中,使用“SQL 编辑器”工具条中的下拉列表或通过执行 USE 命令,来选择要创建 XML 列的数据库。例如:
    USE sde;
    
  8. 使用 CREATE FULLTEXT CATALOG 语句在数据库中创建全文目录。

    例如:

    CREATE FULLTEXT CATALOG SDE_DEFAULT_CAT IN PATH 'C:\Data\Fulltext' AS DEFAULT;
    

    如果提供 SDE_DEFAULT_CAT 之外的其他名称,则必须修改 SDE_dbtune 表中 DEFAULTS 关键字的 XML_IDX_FULLTEXT_CAT 参数值。还可以有选择地设置全文目录的其他属性,例如,提供文件在磁盘上的存储位置以及将目录设置为数据库的默认全文目录。

  9. 将此全文目录的 REFERENCES 权限授予拥有 XML 列的用户,或者将此权限授予该用户所属的角色。

    例如:

    GRANT REFERENCES ON FULLTEXT CATALOG :: SDE_DEFAULT_CAT TO dataOwners;
    
9/15/2013