zoukankan
html css js c++ java
如何使用sql的全文检索功能
1、启动 Microsoft Search 服务
开始菜单-->SQL程序组-->服务管理器-->下拉筐-->Microsoft Search 服务-->启动它
2、
..\Microsoft SQL Server\MSSQL\FTDATA\SQLServer\Config\目录里建一个非空noise.chs文件
非空noise.chs文件,也有人说是空的noise.chs文件,但我每次都往里写几个没用的字母。
3、建立环境
打开查询分析器-->执行下列脚本:
--------------------------------------------
create database test ---创建test数据库
use test ---选择test数据库
create table dali (ID int not null primary key,MyImage image,FileType varchar(255),FileNmae varchar(255)) ---创建dali表
--dali表中 Id,MyImage,FileType 三列是必须的,因为要对image列索引的话,必须要有一个主键列,一个image列,一个存放文件类型的列
--我们知道在windows系统中文件类型是靠扩展名来区分的所以FileType列也就是用来放 文件的扩展名
--------------------------------------------
sp_
fulltext_database 'enable' --为全文索引启用数据库
sp_fulltext_catalog 'My_FullDir', 'create' ---创建一个叫My_FullDif的全文目录
declare @Key sysname ; select @Key=c.name from syscolumns a,sysconstraints b,sysobjects c where a.id=object_id('a') and a.name='a' and a.id=b.id and b.constid=c.id and c.name like 'PK%'
exec sp_fulltext_table 'dali','create','My_FullDir',@Key ----这两句是为全文索引,对表进行标记
sp_fulltext_column 'dali','MyImage','add',0x0804,'FileType' ---这句是指定MyImage列为全文索引列,FileType是类型列
------------------------------------------------
4、在c盘下放一个扩展名为doc的word文件,一个扩展名为xls的excel文件,一个扩展名为htm的网页文件,个扩展名为bmp的图片
共4个,大家可根据实际情况放入!
5、插入数据
建立下面这个存储过程
--------------------------------------------------
CREATE PROCEDURE sp_textcopy
@srvname varchar (30),
@login varchar (30),
@password varchar (30),
@dbname varchar (30),
@tbname varchar (30),
@colname varchar (30),
@filename varchar (30),
@whereclause varchar (40),
@direction char(1)
AS
/* 这是使用textcopy工具将文件插入到数据库中,如果有前台工具可以用前台开发工具将文件插入,这里为了演示 */
DECLARE @exec_str varchar (255)
SELECT @exec_str='textcopy /S '+@srvname+' /U '+@login+' /P '+@password+' /D '+@dbname+' /T'+@tbname+' /C '+@colname+' /W"'+@whereclause+'" /F"'+@filename+'" /'+@direction
EXEC master..xp_cmdshell @exec_str
----------------------------------------------------
insert dali values(1,0x,'doc','大力的doc') ---其中第二列是 0x 它是一个16进制数对应image列,是必须的,不要写null,第三列是文件类型,既扩展名
sp_textcopy '你的服务器名','sa','你的密码','test','dali','MyImage','c:\大力的doc.doc','where ID=1','I'
-------依次参数是:实例名,用户名,密码,数据库名,表名,image列名,路径及文件名,条件(你必须保证它只选择一行),I
---------------------------------------------------------------------------------------------------------------------
insert dali values(2,0x,'bmp','图片')
sp_textcopy '你的服务器名','sa','你的密码','test','dali','MyImage','c:\图片.bmp','where ID=2','I' --注意条件是 ID=2
insert dali values(3,0x,'xls','Excel文件')
sp_textcopy '你的服务器名','sa','你的密码','test','dali','MyImage','c:\Excel文件.xls','where ID=3','I' --注意条件是 ID=3
insert dali values(4,0x,'htm','网页')
sp_textcopy '你的服务器名','sa','你的密码','test','dali','MyImage','c:\网页.htm','where ID=4','I' --注意条件是 ID=4
----------上面的语句,要保证类型一样,路径正确,条件唯一正确应该就可以了
6、填充全文索引
sp_fulltext_table 'dali','start_full' ---第一个参数是表名,第二个参数是启动表的全文索引的完全填充
7、可以开始你的实验了
select * from dali where contains(MyImage,'J老师')
select * from dali where contains(MyImage,'海老师')
------END----------
--调试环境:SQLServer2K、Windows2Kas
查看全文
相关阅读:
How to Build Office Developer Tools Projects with TFS Team Build 2012
查看hyper-v主机mac地址
“Stamping” PDF Files Downloaded from SharePoint 2010
PostgreSQL体系基本概念
PostgreSQL 安装
HDFS+MapReduce+Hive+HBase十分钟快速入门
光照计算公式
游戏中的碰撞
数组
扑克牌概率
原文地址:https://www.cnblogs.com/iclotus/p/779433.html
最新文章
站立会议第一天
团队编程_任务分配
学习进度条
音乐播放器之音频播放
音乐播放器之加载我的音乐
音乐播放器后台之歌曲读取
uwp版的音乐播放器练手
音乐播放器页面之汉堡菜单
Bash On Windows的学习
Java学习笔记--JDK动态代理
热门文章
Java学习笔记--反射API
Java学习笔记--脚本语言支持API
Java学习笔记--异常描述
Interoperability between Java and SharePoint 2013 on Premises
How does Web Analytics works under sharePoint 2010
沙盒代码执行请求被拒绝,因为沙盒代码主机服务太忙,无法处理请求。
Creating External Lists From Code
How to Use Telnet to Test SMTP Communication
Step by step configuration of Outgoing Emails from SharePoint to Microsoft Online
转载 BCS 的好文章 1
Copyright © 2011-2022 走看看