仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 933|回复: 10
打印 上一主题 下一主题

[学习教程] MSSQL网页编程之全文索引image列,全攻略!

[复制链接]
简单生活 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:28:22 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
这能找出所有错误的99.99%。它不能找出的是仅仅涉及数据文件的损坏(这很不常见)。如果你想要检查一张表,你通常应该没有选项地运行myisamchk或用-s或--silent选项的任何一个。攻略|索引
明天“千载难逢”的停电了,看了一天书。早晨弄了一下全文索引,决意把心得贴出来,我只管写的具体,人人配合进修,接待斧正!

1、启动MicrosoftSearch服务
入手下手菜单-->SQL程序组-->服务办理器-->下拉筐-->MicrosoftSearch服务-->启动它

2、
..MicrosoftSQLServerMSSQLFTDATAQLServerConfig目次里建一个非空noise.chs文件
非空noise.chs文件,也有人说是空的noise.chs文件,但我每次都往里写几个没用的字母。

3、创建情况
翻开查询剖析器-->实行以下剧本:
--------------------------------------------
createdatabasetest---创立test数据库
usetest---选择test数据库
createtabledali(IDintnotnullprimarykey,MyImageimage,FileTypevarchar(255),FileNmaevarchar(255))---创立dali表
--dali表中Id,MyImage,FileType三列是必需的,由于要对image列索引的话,必需要有一个主键列,一个image列,一个寄存文件范例的列
--我们晓得在windows体系中文件范例是靠扩大名来辨别的以是FileType列也就是用来放文件的扩大名
--------------------------------------------

sp_fulltext_databaseenable--为全文索引启用数据库
sp_fulltext_catalogMy_FullDir,create---创立一个叫My_FullDif的全文目次

declare@Keysysname;select@Key=c.namefromsyscolumnsa,sysconstraintsb,sysobjectscwherea.id=object_id(dali)anda.name=IDanda.id=b.idandb.constid=c.idandc.namelikePK%
execsp_fulltext_tabledali,create,My_FullDir,@Key----这两句是为全文索引,对表举行标志

sp_fulltext_columndali,MyImage,add,0x0804,FileType---这句是指定MyImage列为全文索引列,FileType是范例列
------------------------------------------------
4、在c盘下放一个扩大名为doc的word文件,一个扩大名为xls的excel文件,一个扩大名为htm的网页文件,个扩大名为bmp的图片
共4个,人人可依据实践情形放进!

5、拔出数据
创建上面这个存储历程
--------------------------------------------------
CREATEPROCEDUREsp_textcopy
@srvnamevarchar(30),
@loginvarchar(30),
@passwordvarchar(30),
@dbnamevarchar(30),
@tbnamevarchar(30),
@colnamevarchar(30),
@filenamevarchar(30),
@whereclausevarchar(40),
@directionchar(1)
AS
/*这是利用textcopy工具将文件拔出到数据库中,假如有前台工具能够用前台开辟工具将文件拔出,这里为了演示*/
DECLARE@exec_strvarchar(255)
SELECT@exec_str=textcopy/S+@srvname+/U+@login+/P+@password+/D+@dbname+/T+@tbname+/C+@colname+/W"+@whereclause+"/F"+@filename+"/+@direction
EXECmaster..xp_cmdshell@exec_str
----------------------------------------------------

insertdalivalues(1,0x,doc,鼎力的doc)---个中第二列是0x它是一个16进制数对应image列,是必需的,不要写null,第三列是文件范例,既扩大名

sp_textcopy你的服务器名,sa,你的暗码,test,dali,MyImage,c:鼎力的doc.doc,whereID=1,I
-------顺次参数是:实例名,用户名,暗码,数据库名,表名,image列名,路径及文件名,前提(你必需包管它只选择一行),I
---------------------------------------------------------------------------------------------------------------------
insertdalivalues(2,0x,bmp,图片)
sp_textcopy你的服务器名,sa,你的暗码,test,dali,MyImage,c:图片.bmp,whereID=2,I--注重前提是ID=2

insertdalivalues(3,0x,xls,Excel文件)
sp_textcopy你的服务器名,sa,你的暗码,test,dali,MyImage,c:Excel文件.xls,whereID=3,I--注重前提是ID=3

insertdalivalues(4,0x,htm,网页)
sp_textcopy你的服务器名,sa,你的暗码,test,dali,MyImage,c:网页.htm,whereID=4,I--注重前提是ID=4

----------下面的语句,要包管范例一样,路径准确,前提独一准确应当就能够了

6、添补全文索引

sp_fulltext_tabledali,start_full---第一个参数是表名,第二个参数是启动表的全文索引的完整添补

7、能够入手下手你的实行了

select*fromdaliwherecontains(MyImage,J先生)

select*fromdaliwherecontains(MyImage,海先生)

------END----------
--调试情况:SQLServer2000企业版、Windows2000初级服务器

提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-14 08:33

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表