SQL2005实现全文检索的步骤 停止数据库的用户连接

简介:
-- 停止数据库的用户连接  

create   proc  killspid ( @dbname   varchar ( 50 ))  
as    
declare   @sql   nvarchar ( 1000 ),  @spid   int    
declare  getspid   cursor   for    select  spid  from  sysprocesses  
where  dbid = db_id ( @dbname )     
open  getspid   
fetch   next   from  getspid  into   @spid    
while   @@fetch_status = 0    
begin   
     
exec ( ' kill  ' + @spid )         
     
fetch   next   from  getspid  into   @spid    
end    
close  getspid   
deallocate  getspid  
go   

-- 用法 
use  master   
exec  killspid  ' 数据库名 '   

 

 

 
SQL2005实现全文检索的步骤是什么? 
  与SQL2000的全文检索实现有什么不同? 
答案: 
具本步骤为(括号内为每步所调用的存储过程名称): 
 
(1)启动数据库的全文处理功能(sp_fulltext_datebase); 
(2)建立全文目录(sp_fulltext_catalog); 
(3)在全文目录中注册需要全文索引的表(sp_fulltext_table); 
(4)指出表中需要全文检索的列名(sp_fulltext_column
(5)为表创建全文索引(sp_fulltext_table); 
(6)填充全文索引(sp_fulltext_catalog)。 
 
例: 
use pubs 
go 
exec sp_fulltext_database 'enable' 
--为titles表建立全文索引数据元,其中create为建立,activate为激活,deactivate为关闭表全文索引的激活状态,使 
它不再参加全文目录填充,drop为删除;create参数中,后面跟的是全文目录名称和索引列名。 
--下面语句为pubs数据库中的titles表创建全文索引数据元,存储该数据元的全文目录为FT_pubs,所使用的唯一索引为 
UPKCL_titleidind(title表中为title_id列的PRIMARY KEY约束所建立的唯中索引) 
sp_fulltext_table titles,'create','FT_pubs','upkcl_titledind' 
 
--激活它 
sp_fulltext_table titles,'activate' 
 
--指定参加全文索引的列 
sp_fulltext_column 'titles','title','add' 
sp_fulltext_column 'titles','notes','add' 
 
下面是一个完整的例子: 
--在执行该脚本程序之前启动sql server的全文搜索服务,即microsoft search服务 
use pubs --打开数据库 
go 
--检查pubs是否支持全文索引,如果不支持全文索引,则使用sp_fulltext_datebase打开该功能 
if (select databaseproperty ('pubs','IsFulltextEnables'))=0 
execute sp_fulltext_database 'enable' 
--建立全文目录FT_pubs 
execute sp_fulltext_catalog 'FT_pubs','create' 
--为titles表建立全文索引数据元 
execute sp_fulltext_table 'titles','FT_pubs','UPKCL_titleidind' 
--设置全文索引列名 
execute sp_fulltext_column 'titles','title','add' 
execute sp_fulltext_column 'titles','notes','add' 
--建立全文索引 
execute sp_fulltext_table 'FT_pubs','activate' 
--填充全文索引目录 
execute sp_fulltext_catalog 'FT_pubs','start_full' 
GO 
--检查全文目录填充情况 
WHILE FulltextCatalogProperty("FT_pubs','PopulateStatus')<>0 
BEGIN 
--如果全文目录正处于填充状态,则等待30秒后再检测一次 
WAITFOR DELAY ‘0:0:30’ 
END 
--全文目录填充完成后,使用全文目录检索 
 
--查询title列或notes列中包含有database或computer字符串的图书名称 
SELECT title 
FROM title 
where CONTAINTS(title,'database') 
or contains(notes,'database') 
or contains(title,'computer') 
or contains(notes,'computer') 

 
select*fromwhere*'test'
优化后性能 提升  2倍+
select from Table1 where Contains((Content,Title),'test')
 
 

 



本文转自曾祥展博客园博客,原文链接:http://www.cnblogs.com/zengxiangzhan/archive/2010/01/03/1638164.html,如需转载请自行联系原作者

相关文章
|
SQL 自然语言处理 安全
在数据库中跑全文检索、模糊查询SQL会不会被开除
希望通过本次课题,与大家探讨在数据库中跑全文检索、模糊查询SQL会不会被开除、分析解决方案并学会保护自己和公司业务。
在数据库中跑全文检索、模糊查询SQL会不会被开除
|
SQL 关系型数据库 API
|
SQL 索引 数据格式
SQL SERVER 2008创建全文目录和全文检索
--iFTS(Interated Full-Text Search),整合的全文搜索引擎--可在char,nchar,nvarchar,varchar和text,ntext,image,xml等类型进行搜索 --创建全文目录 CREATE FULLTEXT CATALOG AdvFTCatalo...
853 0
SQL SERVER 2008的全文检索
CREATE FULLTEXT INDEX ON SalesLT.Product (     Name LANGUAGE 1033,     Color LANGUAGE 1033 )  KEY INDEX PK_Product_ProductID on (AdvFTCatalog)  W...
749 0
|
SQL Web App开发 搜索推荐
【转】如何实现小型WEB搜索引擎(C# SQL Server全文检索 Asp.net)
SOSO-----为您量身定做的 WEB搜索引擎 1 引言 21世纪,中国互联网搜索引擎领域可谓群雄逐鹿,百度、Yahoo、中搜、搜狗等等都使出浑身解数吸引着网民的眼球。这些大网站可谓是各有所长,总的来说虽然他们搜索功能都很强,但是搜索得到的结果基本上是千篇一律,信息的冗余量很大,网民不得不在一次又一次的翻页中浪费时间,或者为了想出一个好的关键词而绞尽脑汁。
2156 0
|
8天前
|
SQL 人工智能 算法
【SQL server】玩转SQL server数据库:第二章 关系数据库
【SQL server】玩转SQL server数据库:第二章 关系数据库
51 10
|
1月前
|
SQL 数据库 数据安全/隐私保护
Sql Server数据库Sa密码如何修改
Sql Server数据库Sa密码如何修改
|
18天前
|
SQL
启动mysq异常The server quit without updating PID file [FAILED]sql/data/***.pi根本解决方案
启动mysq异常The server quit without updating PID file [FAILED]sql/data/***.pi根本解决方案
16 0