创建全文索引----SQLserver
1、启动 Microsoft Search 服务
开始菜单-->SQL程序组-->服务管理器-->下拉筐-->Microsoft Search 服务-->启动它。
2、 ..\Microsoft SQL Server\MSSQL\FTDATA\SQLServer\Config\目录里建一个非空noise.chs文件
非空noise.chs文件,也有人说是空的noise.chs文件,但我每次都往里写几个没用的字母。
3、建立环境
打开查询分析器-->执行下列脚本:
--检查数据库pubs是否支持全文索引,如果不支持
--则使用sp_fulltext_database 打开该功能
if(select databaseproperty('DeviceInfoPortal','isfulltextenabled'))=0
execute sp_fulltext_database 'enable' --建立全文目录FT_PUBS
execute sp_fulltext_catalog 'FT_DeviceInfoPortal','create' --创建唯一索引
create unique clustered index Idx_files_id on dbo.files(fileid) --为title表建立全文索引数据元
execute sp_fulltext_table 'files','create','FT_DeviceInfoPortal','Idx_files_id' --设置全文索引列名
--execute sp_fulltext_column 'files','content','add'
execute sp_fulltext_column @tabname = 'files',@colname = 'content',@action = 'add',@type_colname = 'type'; --execute sp_fulltext_column 'files','content','drop' --建立全文索引
--activate,是激活表的全文检索能力,也就是在全文目录中注册该表
execute sp_fulltext_table 'files','activate' --填充全文索引目录
execute sp_fulltext_catalog 'FT_DeviceInfoPortal','start_full'
go --在您可以使用操作系统筛选器、断字符和词干分析器之前,您必须将它们加载到服务器实例中
execute sp_fulltext_service @action='load_os_resources', @value=1; --检查全文目录填充情况
While fulltextcatalogproperty('FT_DeviceInfoPortal','populateStatus')<>0
begin --如果全文目录正处于填充状态,则等待30秒后再检测一次
waitfor delay '0:0:30'
end
--全文目录填充完成后,即可使用全文目录检索 select *
from files
where CONTAINS(*,'运行记录')
or CONTAINS(*,'Understanding')
or CONTAINS(*,'全文搜索') or CONTAINS(*,'出厂日期')
结果如下:
全文索引中的几个问题:
1. 搜索时出现错误:
服务器: 消息 7619,级别 16,状态 1,行 2
查询子句只包含被忽略的词
这种情况修改 \Mssql\Ftdata\Sqlserver\Config 下对应语言的干扰词列表文件
2. 修改了干扰词文件,查询中文时仍然出现上述问题
a. 首先检查你的SQL有没有安装最新的补丁,检查的方法是在查询分析器中运行:
select @@version
如果出来的版本号是8.00.760以下,则表明你未安装sp3的补丁,要装上。
注意下载后,执行的时候是解压,要在解压后的目录中执行setup.bat才是真正的安装。
b. 配置全文索引时,单词断字符选择"中文(中国)"
c. Noise.chs文件中至少有一个单词,例如:?
d. 如果在全文检索时,你能正常修改干扰词文件,说明你的全文检索没有使用上这个文件。
如果你配置的全文检索应该要用到这个文件,那就在
“企业管理器--展开你的数据库--右键全文目录--重建全部全文目录”
3. 表中的数据改变后,检索不到。
方法1. 右键你的表--全文索引表--启用增量填充
方法2. 右键你的表--全文索引表--更改跟踪,这样以后的修改会自动填充(有一定延迟)
4. SQL Server 2000以上才支持对image列的全文检索。
创建全文索引----SQLserver的更多相关文章
- SQLServer之创建全文索引
创建全文索引的必须条件 必须具有全文目录,然后才能创建全文索引. 目录是包含一个或多个全文索引的虚拟容器. 使用SSMS数据库管理工具创建全文索引 1.连接数据库,选择数据库,选择数据表->右键 ...
- SQL Server 创建全文索引
背景知识: 全文目录是全文索引是容器.所以在创建全文索引前要有全文目录. 第一步: 创建全文目录: create fulltext catalog catalog_name [on filegroup ...
- MySQL创建全文索引
使用索引时数据库性能优化的必备技能之一.在MySql数据库中,有四种索引:聚焦索引(主键索引).普通索引.唯一索引以及我们这里将要介绍的全文索引(FUNLLTEXT INDEX). 全文索引(也称全文 ...
- 创建在SQLServer 和 Oracle的 DBLINK
dblink 当我们要跨本地数据库.訪问另外一个数据库表中的数据时,本地数据库中就必需要创建远程数据库的dblink,通过dblink本地数据库能够像訪问本地数据库一样訪问远程数据库表中的数据. 一 ...
- Sqlserver 创建到sqlserver 的链接服务器
exec sp_addlinkedserver 'SN_MASTER_SRV', '', 'SQLOLEDB ', '129.223.252.173' exec sp_addlinkedsrvlogi ...
- (1)C# 创建ef sqlserver
连接sql 如果报错不能连接的错误 把这三个IP地址的端口号设置上,并启用.第一个18.6是本机ip,之后就可以测试了 最后重启服务器
- 如何使用Navicat 创建一个SqlServer定时任务
因为网上资料不全,所以自己琢磨了一上午,终于弄出来了,记录一下. step1: 右击[函数]选择[新建函数]添加一个存储过程 step2: 选择[过程],点击下一步直至完成,然后编辑存储过程,保存 s ...
- 关于SQLSERVER的全文目录跟全文索引的区别
很久没有写随笔了,本来之前想写一篇关于SQLSERVER全文索引的随笔,可惜没有时间,一直拖到现在才有时间写,不好意思让各位久等了~ 先介绍一下SQLSERVER中的存储类对象,哈哈,先介绍一下概念嘛 ...
- SqlServer视图的创建与使用
SqlServer系列之视图的创建与使用: 什么是视图? 视图的概述 在数据查询中,可以看到数据表设计过程中,考虑到数据的冗余度低.数据一致性等问题,通常对数据表的设计要满足范式的要求,因此也会造成一 ...
随机推荐
- java使用解压zip文件,文件名乱码解决方案
File outFileDir = new File(outDir);if (!outFileDir.exists()) { boolean isMakDir = outFileDir.mkdirs( ...
- cocos creator发布win10全屏缩放问题
当前2.2.1版本cocos creator发布的win32版本不是全屏的, https://forum.cocos.org/t/win-exe/80429 https://blog.csdn.net ...
- JavaScript this的使用
当作用域不同时,我们可以将this暂时性的保存下来. 例如: _this = this.
- dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib
dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib Table of Contents 1. 启动时报错 ...
- EvenBus源码分析
概述 一般使用EventBus的组件类,类似下面这种方式: public class SampleComponent extends Fragment { @Override public void ...
- 热门搜索词获取java版
日常生活中经常会有这样的需求,就是网站上.app上需要展示近期热搜的一些词汇,其实常用的做法当然是自己写爬虫去爬,不过这种办法是在太麻烦了,为了节省时间,可以调用一些接口来实现,比如常用的聚合数据,小 ...
- document.documentElement 和 document.body
MDN : The Document.documentElement read-only property returns the Element that is the root element o ...
- Spring:注解(@suppresswarnings,@Valid,初始化静态配置数据,定时任务,@EnableAutoConfiguration)
1.@suppresswarnings(" ") 2.@Valid @Valid注解用于校验,所属包为:javax.validation.Valid. ① 首先需要在实体类的相应字 ...
- React 克隆组件 -- React.cloneElement(可以用来修改子组件属性值,复制子组件,添加子组件)
项目要求实现按钮级权限,简单来说就是需要通过后台数据绑定来控制前端页面哪些操作按钮需要渲染,哪些操作按钮不需要渲染, 大体的方案是: 在原有的按钮标签外再套一层按钮权限控制标签,然后每个具体的按钮对照 ...
- Goland 开发插件安装
goland 是一款非常优秀的开发工具,默认打开后,发白的开发界面,也是异常刺眼.但是 Goland 为我们准备了很多插件,要优先安装这些插件,打造适合自己的开发界面. 我自己的设置的主题界面如下: ...