SQL_Server全文索引的使用实例演示_MsSql

本文示范完整的SQL SERVER数据库全文索引以pubs数据库为例
首先,介绍利用系统存储过程创建全文索引的具体步骤:
1) 启动数据库的全文处理功能           (sp_fulltext_database)
2) 建立全文目录                       (sp_fulltext_catalog)
3) 在全文目录中注册需要全文索引的表  (sp_fulltext_table)
4) 指出表中需要全文索引的列名         (sp_fulltext_column)
5) 为表创建全文索引                   (sp_fulltext_table)
6) 填充全文目录                       (sp_fulltext_catalog)

---------********示例********-------------
以对pubs数据库的title和notes列建立全文索引,之后使用索引查询title列或notes列中包含有datebase 或computer字符串的图书名称:

在这之前,需要安装Microsoft Search服务,启动SQL server全文搜索服务

复制代码 代码如下:

use pubs --打开数据库 
go 
--检查数据库pubs是否支持全文索引,如果不支持 
--则使用sp_fulltext_database 打开该功能 
if(select databaseproperty('pubs','isfulltextenabled'))=0 
  execute sp_fulltext_database 'enable' 

--建立全文目录FT_PUBS 
execute sp_fulltext_catalog 'FT_pubs','create' 

--为title表建立全文索引数据元 
execute sp_fulltext_table 'title','create','FT_pubs','UPKCL_titleidind' 

--设置全文索引列名 
execute sp_fulltext_column 'title','title','add' 
execute sp_fulltext_column 'notes','notes','add' 

--建立全文索引 
--activate,是激活表的全文检索能力,也就是在全文目录中注册该表 
execute sp_fulltext_table 'title','activate' 

--填充全文索引目录 
execute sp_fulltext_catalog 'FT_pubs','start_full' 
go 

--检查全文目录填充情况 
While fulltextcatalogproperty('FT_pubs','populateStatus')<>0 
begin 

--如果全文目录正处于填充状态,则等待30秒后再检测一次 
waitfor delay '0:0:30' 
end 

--全文目录填充完成后,即可使用全文目录检索 

select title 
form 
where CONTAINS(title,'database') 
or CONTAINS(title,'computer') 
or CONTAINS(notes,'database') 
or CONTAINS(notes,'database') 

以下介绍一下全文操作类的系统存储过程
过程名称:sp_fulltext_service
执行权限:serveradmin或系统管理员
作     用:设置全文搜索属性

过程名称:sp_fulltext_catalog
执行权限:db_owner及更高角色成员
作     用:创建和删除一个全文目录,启动或停止一个全文目录的索引操作

过程名称:sp_fulltext_database
执行权限:db_owner角色成员
作     用:初始化全文索引或删除数据库中所有全文目录

过程名称:sp_fulltext_table
执行权限:db_ddladnmin或db_owner角色成员
作     用:将一个表标识为全文索引表或非全文索引表

过程名称:sp_fulltext_column
执行权限:db_ddladnmin角色成员
作     用:指出一个全文索引表中的那些列假如或退出全文索引

时间: 2024-10-26 16:36:42

SQL_Server全文索引的使用实例演示_MsSql的相关文章

SQL_Server全文索引的使用实例演示

本文示范完整的SQL SERVER数据库全文索引以pubs数据库为例首先,介绍利用系统存储过程创建全文索引的具体步骤:1) 启动数据库的全文处理功能           (sp_fulltext_database)2) 建立全文目录                       (sp_fulltext_catalog)3) 在全文目录中注册需要全文索引的表  (sp_fulltext_table)4) 指出表中需要全文索引的列名         (sp_fulltext_column)5) 为表

网页最简短的拖动对象代码实例演示

对象|网页 以前在网上看到的最简单的拖动对象的代码,忘记作者叫什么了.原始代码在IE下有些小问题,并且声明了文档类型为xhtml 1.0后,在FF等非IE浏览器下无效,对其进行了改进,现在已经可兼容:IE.Firefox.Opera ... 以下代码只是演示原理,具体应用请结合你自己的实际需求进行修改.  <!doctype html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/T

PHP和MySQL存储过程的实例演示

以下的文章主要是向大家介绍的是PHP和MySQL存储过程的实例演示,我前两天在相关网站看见PHP和MySQL存储过程的实例演示的资料,觉得挺好,就拿出来供大家分享.希望在大家今后的学习中会有所帮助.   PHP与MySQL存储过程 实例一:无参的存储过程     $conn = MySQL_connect('localhost','root','root') or die ("数据连接错误!!!"); MySQL_select_db('test',$conn); $sql = &quo

ADO.NET详细研究(四)--实例演示DataReader基本操作

ado 前面的文章地址: http://dev.csdn.net/develop/article/26/26246.shtm http://dev.csdn.net/develop/article/26/26480.shtm http://dev.csdn.net/develop/article/26/26481.shtm 这次我们用实例演示DataReader的基本应用,当然同时包含Command以及Connection的基本操作.通过这个实例的学习我们能处理一般的数据库系统了. WinFor

jQuery数组处理详解(含实例演示)_jquery

演示所用数组 var _mozi=['墨家','墨子','墨翟','兼爱非攻','尚同尚贤']; 1. $.each遍历示例[常用] $.each(_mozi,function(key,val){ //回调函数有两个参数,第一个是元素索引,第二个为当前值 alert('_mozi数组中 ,索引 : '+key+' 对应的值为: '+val); }); 2. $.grep()过滤数组[常用] $.grep(_mozi,function(val,key){ //过滤函数有两个参数,第一个为当前元素,

jquery中checkbox使用方法简单实例演示_jquery

和大家分享一段基于jQuery实现checkbox列表全选.反选和不选功能的代码,适用于网页多选后需要进行批量操作的场景(如批量删除等).文章结合实例,代码简洁,基本覆盖选项选择操作的方方面面,希望可以帮到有需要的前端开发爱好者. 引入jquery库<script src="ajax/libs/jquery/1.10.2/jquery.min.js"></script>构建HTML 一般从数据库读出来的列表都需要批量选中以便删除与编辑等,下面我们就来模拟下,实现

javascript中checkbox使用方法简单实例演示_javascript技巧

演示一个小小的例子:在购物车里面,我们能够勾选自己所选的商品,然后能够显示出相应的价格.1.首先显示出相应的界面:   相关代码: <body> 商品列表:<br/> 笔记本电脑<input type="checkbox" name="mm" value="3000" onclick="chose(this)" />3000 台式机<input type="checkbox&

Oracle RAC环境下的阻塞(blocking blocked)介绍和实例演示_oracle

RAC环境下的阻塞不同于单实例情形,因为我们需要考虑到位于不同实例的session.也就是说之前查询的v$session,v$lock相应的应变化为全局范围来查找.本文提供了2个查询脚本,并给出实例演示那些session为阻塞者,哪些为被阻塞者.有关阻塞的概念以及单实例环境下的阻塞请参考:Oracle 阻塞(blocking blocked) 1.演示环境 scott@DEVDB> select * from v$version where rownum<2; BANNER ---------

Delphi实例演示Rect、Bounds生成TRect的区别_Delphi

本文以实例演示Rect.Bounds生成TRect的区别,实例代码如下: unitUnit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Button1: TButton; RadioGroup1: TRadioGroup; procedure Ra