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,如需转载请自行联系原作者

相关文章
|
1月前
|
SQL Java 关系型数据库
Java连接MySQL数据库环境设置指南
请注意,在实际部署时应该避免将敏感信息(如用户名和密码)硬编码在源码文件里面;应该使用配置文件或者环境变量等更为安全可靠地方式管理这些信息。此外,在处理大量数据时考虑使用PreparedStatement而不是Statement可以提高性能并防止SQL注入攻击;同时也要注意正确处理异常情况,并且确保所有打开过得资源都被正确关闭释放掉以防止内存泄漏等问题发生。
85 13
|
1月前
|
SQL 关系型数据库 MySQL
MySQL数据库连接过多(Too many connections)错误处理策略
综上所述,“Too many connections”错误处理策略涉及从具体参数配置到代码层面再到系统与架构设计全方位考量与改进。每项措施都需根据具体环境进行定制化调整,并且在执行任何变更前建议先行测试评估可能带来影响。
683 11
|
7月前
|
关系型数据库 MySQL Java
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
【YashanDB知识库】原生mysql驱动配置连接崖山数据库
|
6月前
|
安全 Linux 网络安全
YashanDB数据库服务端SSL连接配置
YashanDB支持通过SSL连接确保数据传输安全,需在服务端生成根证书、服务器证书及DH文件,并将根证书提供给客户端以完成身份验证。服务端配置包括使用OpenSSL工具生成证书、设置SSL参数并重启数据库;客户端则需下载根证书并正确配置环境变量与`yasc_env.ini`文件。注意:启用SSL后,所有客户端必须持有根证书才能连接,且SSL与密码认证独立运行。
|
3月前
|
SQL XML Java
配置Spring框架以连接SQL Server数据库
最后,需要集成Spring配置到应用中,这通常在 `main`方法或者Spring Boot的应用配置类中通过加载XML配置或使用注解来实现。
358 0
|
6月前
|
Oracle 安全 关系型数据库
【Oracle】使用Navicat Premium连接Oracle数据库两种方法
以上就是两种使用Navicat Premium连接Oracle数据库的方法介绍,希望对你有所帮助!
1342 28
|
6月前
|
SQL 数据库连接 数据库
在C++的QT框架中实现SQLite数据库的连接与操作
以上就是在C++的QT框架中实现SQLite数据库的连接与操作的基本步骤。这些步骤包括创建数据库连接、执行SQL命令、处理查询结果和关闭数据库连接。在实际使用中,你可能需要根据具体的需求来修改这些代码。
358 14
|
7月前
|
数据库
【YashanDB知识库】YDC连接数据库报错yasdb return code is zero
【YashanDB知识库】YDC连接数据库报错yasdb return code is zero