我正在SQL Server 2008中执行FTS。
我需要立即在现有的停止列表中添加一些新的停止词(大约有100个)。
如何做到这一点?
ALTER FULLTEXT STOPLIST [TableName.CatalogName] ADD 'NewStopWord' LANGUAGE 'Neutral';
显然,您需要用您的单词替换'NewStopWord'
。如果要使停止词语言特定,也可以更改'Neutral'
。冲洗重复
还有一个注意事项。在SQL 2008中,您只能指定[TableName]
,但在SQL 2012中,您可以指定[TableName.CatalogName]
。这是有道理的,因为在2008年,每个表/视图只能有一个全文目录。
直接从MSDN 获取
- 在对象资源管理器中,展开服务器
- 展开"数据库",然后展开要在其中创建全文非索引字表的数据库
- 展开"存储",然后右键单击"全文停止列表"
- 选择"新建全文停止列表"
- 指定非索引字表名称
- (可选)指定其他人作为非索引字表所有者
- 选择以下创建非索引字表选项之一:
- 创建一个空的非索引字表
- 从系统非索引字表创建
- 从现有全文非索引字表创建
- 有关详细信息,请参阅新建全文停止列表(常规页)
单击"确定"。
试试这个:
Create table StopListCustome (StopListCustome nvarchar(50))
BULK INSERT dbo.StopListCustome
FROM '\SystemXDiskZSalesdataStopList.csv' --you can use other type of insert
WITH ( FORMAT='CSV');
SELECT 'ALTER FULLTEXT STOPLIST MyStoplist ADD ' +
quotename(StopListCustome, '''') + ' LANGUAGE ''English'''
FROM StopListCustome
然后copy & past
在新的查询窗口中产生并运行它。如果你像我一样使用while
插入比复制过去更好,你可以在Cursor中写select查询。