【问题标题】:Make column compatible with Full-Text indexing使列与全文索引兼容
【发布时间】:2014-01-08 19:45:11
【问题描述】:

我尝试在我的表上创建一个全文索引,它说我首先需要可全文索引的列。这是什么意思?

我的所有列都是 varchar 或 nvarchar(允许为空)。

这是我遵循的教程:

http://blog.sqlauthority.com/2008/09/05/sql-server-creating-full-text-catalog-and-index/

【问题讨论】:

  • 你的专栏是NVARCHAR(MAX) 还是VARCHAR(MAX) 有没有机会???
  • 不,都是整数长度
  • 您能否将代码添加到您用于创建 FTS 的问题中??
  • 我其实只是在使用Microsoft SQL Server Manager 界面,下面是我遵循的教程:blog.sqlauthority.com/2008/09/05/…
  • 检查您的服务并确保您安装了 FTS 服务并且它正在运行。

标签: sql sql-server sql-server-2008 indexing


【解决方案1】:

我不知道你做错了什么以及在哪里做错了。

首先转到您的服务,看看您是否在那里安装了全文服务,如果已安装,请确保它是Running

一旦你确认了它,它就在那里并且正在运行,你可以执行以下步骤在表上创建 FTS 索引

/*A Table with A Primary key Defined on a column*/

CREATE TABLE Test_FTS 
(ID INT PRIMARY KEY NOT NULL
,Column1 NVARCHAR(100)
,Column2 VARCHAR(100))
GO

/*
Your Table have to have a PRIMARY KEY  or atleast a Unique Index defined on any 
column in your table.

Basicaly this Unique Index/Primary Key value will be stored in your FTS
working as a POINTER to the data in your table. 
*/

 /* Only create a Unique Index if you do not have a Primary Key in your table*/
CREATE UNIQUE INDEX UIX_SomeUniqueIdex ON dbo.Test_FTS(ID);
GO

/*Create a Catalog*/
CREATE FULLTEXT CATALOG FTS_Test_Catalog AS DEFAULT;
GO

/* Finally the FTS Index */
CREATE FULLTEXT INDEX ON Test_FTS (Column1) 
   KEY INDEX UIX_SomeUniqueIdex;
GO

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-16
    • 2016-05-13
    • 2016-05-17
    • 2011-10-13
    • 1970-01-01
    • 1970-01-01
    • 2020-05-17
    相关资源
    最近更新 更多