SQL2005 Full Text 搜索
...
Bing
...
SQLServer
...
0
/1253
...
2 years 2 months ago
今天好不容易终于将这个Blog在Access里面的数据转到SQLServer上,虽然知道可以直接使用“Inport”倒入数据,不过为了锻炼一下这两天来学习Transact-SQL的成果,还是决定使用DataReader来提取Access里面的数据,然后使用PROCEDURE来存储数据到SQLServer上。当学会Transact-SQL之后,一下子觉得自己的本事精进不少,原本很难实现的一些功能,结果使用Transact-SQL语句之后,数据就很乖地听话了,不像在Access里面让人头疼的要命。
SQLServer2005的一个特别爽的功能是增加了Full-Text Serach这样一个搜索功能,有了这个就让人几乎是可以随心所欲的搜索想要搜索的资料了。但是本人在使用的时候,却发现这样一个问题:个人创建的数据库默认是无法使用Full-Text Serach的,这个让我郁闷了。想试一试新功能,但是却被阻碍了,这可如何是好。还好在添加Full Text Catalogs 的时候谈出一个错误警告框,上面是用英文写的,好像是:To enable full text Catalogs,please excute sp_fulltext_service procedure。还好我懂英文,这两天又被这个该死的SQLServer的官方文档搞得晕头转向的,还是弄懂了是怎么一回事。随我来弄明白:
1.展开Object Explorer(对象浏览器,这个翻译我也不知道对不对,我时时用的英文版本的)下的DataBase文件夹。然后展开你自己创建的数据库,比如我的是“NewBlog”,展开下面的“Programmability”文件夹,再展开“Stored Procedures”文件夹,展开“System Stored Procedures”文件夹。哈哈,怎么样,下面的那些东西是不是把你给弄糊涂了,我刚开始也不知道到底是什么,搞的我云里雾里的,不过现在好了,知道里面是保存存储过程的一些系统自带的存储过程,有很重要的用途的哦。以后有时间,我再帮大家讲解如何认识数据库里面的文件。找找看,怎么样,是不是发现了名字为“dbo.sp_fulltext_service”的一个文件,有兴趣可以右击,选择“Modify”来查看这个文件,相信你一看也能懂一些的。要使用的就是这个Procedure。
2.好了,现在来让我们的数据库可以使用新的搜索功能吧。新建一个查询,如果不知道,还是建议先好好学习一下基本的操作吧。然后在里面输入以下代码:
USE NewBlog
EXEC sp_fulltext_service 'enable'
3.好了,现在选择你的数据库下面的任何一个表,然后右击,看看"Full Text Index"选项是不是被激活了?呵呵,现在就可以添加Full Text了,选择Full Text Index 子选项的“Define Full Text Index”,然后再按照它的步骤一步一步来,就OK了,不懂看看提示,应该搞得定的,搞不定在下面给我留言。
4.准备工作都搞好了,现在总是要测试一下新功能才能让人感觉踏实。好,我再上一步中,给NewBlog 数据库中的Articles的Title和Content添加了Full Text Index。看看下面的代码:
USE NewBlog
GO
SELECT Content
FROM Articles
WHERE CONTAINS(Content,' "Flex" AND "WebService" ')
你自己的测试要根据你自己的数据库和表以及Full Text所指定的位置来测试。关于搜索,还有好多要讲的,今天仅仅只开个头罢了。我也还在好好学习,边学习,边出一些文章吧。敬请关注了!
明天中午要回家了,真开心,虽然最近一直不能上网,但是还是一直在工作的,现在对ASP.NET的编程有了更进一步的掌握了,同时对C#的掌握程度也精进了不少,看来闭关才两星期(其中有一天在睡觉,晚上在打羽毛球)效果果然是不错。其实文章也还是在写,只不过由于不能上网,都不能上传,对不起各位了。好了,睡觉了,凌晨了,明天终于要回家了哦~~~听说家里装了空调了,嘿嘿,看来这下打麻将就不用担心天气问题了。我家里面的兄弟们,还有一群侄子侄女都等着我呢!
By:Lovan Date:2006/07/26 0:30