【问题标题】:Using sys.dm_fts_index_keywords_by_document in SQL Server 2012在 SQL Server 2012 中使用 sys.dm_fts_index_keywords_by_document
【发布时间】:2013-10-05 05:07:17
【问题描述】:

我正在尝试确定一个单词在一个表中出现了多少次以进行 uni 作业。我一直在 SQL Server 2012 中使用 sys.dm_fts_index_keywords_by_document,就像我之前在 2008 年使用过的一样。之前它运行良好,但在这种情况下,SQL Server 似乎不太喜欢它。

SELECT display_term, SUM(occurrence_count) AS APP
FROM sys.dm_fts_index_keywords_by_document
( 
    DB_ID('Assign2A_341'),     OBJECT_ID('Post') 
)
GROUP BY display_term 
ORDER BY APP DESC

我一直遇到这个错误:Msg 30004, Level 16, State 1, Line 1 全文系统视图或 stvf 无法打开用户表对象 id 599673184。

这是正在使用的表格格式:

CREATE TABLE Post(
Post_ID     FLOAT           NOT NULL,
Post_Txt    NVARCHAR(MAX)   NOT NULL,   
Post_Date   NVARCHAR(255)   NOT NULL,
Post_Author VARCHAR(50)     NOT NULL,
PRIMARY KEY(Post_ID));

我看不出这不起作用的任何原因,我之前使用它的上下文与我现在使用它的方式非常相似,唯一的区别是我使用的 SQL Server 版本以及表格的内容。

任何帮助将不胜感激!

【问题讨论】:

    标签: sql sql-server sql-server-2012


    【解决方案1】:

    你有没有在create Table语句之后在Table Post上创建全文索引?

    另外,正如BoL 所说,您需要足够的权限才能从该索引中读取,这些权限是否存在?

    需要 CREATE FULLTEXT CATALOG 权限和 SELECT 权限 全文索引覆盖的列。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多