[摘要]本文介绍如何使用HubbleDotNet实现基本的全文搜索,包括建立搜索数据库、数据表、建立索引,压缩索引和搜索示例等内容。

上文介绍了HubbleDotNet的安装,接下来介绍如何使用HubbleDotNet实现基本的全文搜索。我们使用HubbleDotNet进行搜索,一般都是已经建立数据库了,所以本文也以在已有数据库的情况下使用HubbleDotNet建立全文搜索进行介绍。

一、 准备数据

1、创建一个News数据库,我使用的MSSQL 2005:

2、创建News表:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
USE [News]
GO
  
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[News](
    [Id] [int] NOT NULL,
    [Title] [nvarchar](max) NULL DEFAULT (''),
    [Content] [nvarchar](max) NULL DEFAULT (''),
    [Time] [datetime] NULL DEFAULT ('1900-1-1'),
    [Url] [varchar](max) NULL
) ON [PRIMARY]
  
GO
SET ANSI_PADDING OFF

如下图:

3、在News表中添加一些数据,供后面测试搜索使用,我使用的是HubbleDotNet提供的中文新闻数据,可以在http://hubbledotnet.codeplex.com/releases/view/36585找到,如下图:

二、建立搜索数据库

首先,进入HubbleDotNet的QueryAnalyzer,在【127.0.0.1】节点点击鼠标右键,在弹出的菜单选择CreateDataBase,如下图:

打开CreateDataBase窗口,并填写数据库的相关信息,如下:

点击Create按钮,News 数据库就创建好了,如下图:

三、创建News表

在建立的News数据库上单击鼠标右键,在弹出的菜单上选择Create Table项,如下图:

打开Create Table窗口,并填写建表的相关信息,如下图:

点击Next按钮,并填写相关信息,如下图:

点击Next按钮,并填写相关信息,如下图:

点击Next按钮,如下图:

点击Finish按钮,会询问是否现在就为News表创建索引,如下图:

选择“是”,就会显示创建索引的窗口:

点击Start按钮,就开始创建News表的索引,创建成功后关闭该窗口,可以看到News表创建成功了:

四、压缩索引

在News表上点击鼠标右键,选择Optimize菜单项,会弹出一个对话框,询问是否压缩News表,点击“是”,就会进入压缩索引的窗口,显示压缩的进度,如下图:

压缩完成后,关闭该窗口就行。

五、搜索示例

在查询窗口里输入如下查询语句:

1
select top 10 * from News where Content match '北京' order by score desc

结果如下:

更多的查询语法可以参考HubbleDotNet的帮助文档:http://hubbledotnet.codeplex.com/documentation

到这里,HubbleDotNet的基本使用就介绍完了,希望对想了解和使用HubbleDotNet的朋友有所帮助。

HubbleDotNet全文搜索数据库组件(二)的更多相关文章

  1. HubbleDotNet全文搜索数据库组件(一)

    HubbleDotNet 简介及安装详解 2012-11-05 12:59 来源:9SSSD.COM 作者:starts_2000 字号:T|T [摘要]HubbleDotNet 是一个基于.net ...

  2. HubbleDotNet开源全文搜索数据库项目--技术详解

    HubbleDotNet 简介 HubbleDotNet 和 Lucene.net 性能对比测试 HubbleDotNet 和 Lucene.Net 匹配相关度的比较 HubbleDotNet 软件架 ...

  3. HubbleDotNet 开源全文搜索数据库项目--为数据库现有表或视图建立全文索引(三) 多表关联全文索引模式

    关系型数据库中,多表关联是很常见的事情,HubbleDotNet 可以对部分情况的多表关联形式建立关联的全文索引,这样用户就不需要专门建一个大表 来解决多表关联时的全文索引问题. 下面以 为数据库现有 ...

  4. HubbleDotNet开源全文搜索组件相关资源

    系统简介 HubbleDotNet 是一个基于.net framework 的开源免费的全文搜索数据库组件.开源协议是 Apache 2.0.HubbleDotNet提供了基于SQL的全文检索接口,使 ...

  5. Flask学习之十 全文搜索

    英文博客地址:blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-x-full-text-search 中文翻译地址:http://ww ...

  6. Postgresql数据库安装中文全文搜索插件zhparser的问题

    在PG数据库的基础上加装zhparser中文全文搜索插件,说实话,挺怕这些单独编译安装的插件的,因为安装PG数据库方法的不同,最后可能导致安装的插件各种安装不上,这里说一下我遇到的坑,系统环境是Cen ...

  7. Docker安装带中文全文搜索插件zhparser的Postgresql数据库

    上一篇讲了在已经安装了PG数据库的情况下,安装全文搜索插件zhparser遇到的问题.在一个全新的环境中安装带有全文搜索插件zhparser的PG数据库,可以使用已经做好的Docker镜像,在安装的过 ...

  8. lucene全文搜索之二:创建索引器(创建IKAnalyzer分词器和索引目录管理)基于lucene5.5.3

    前言: lucene全文搜索之一中讲解了lucene开发搜索服务的基本结构,本章将会讲解如何创建索引器.管理索引目录和中文分词器的使用. 包括标准分词器,IKAnalyzer分词器以及两种索引目录的创 ...

  9. SQL Server 全文搜索

    SQL Server 的全文搜索(Full-Text Search)是基于分词的文本检索功能,依赖于全文索引.全文索引不同于传统的平衡树(B-Tree)索引和列存储索引,它是由数据表构成的,称作倒转索 ...

随机推荐

  1. 初探boost之progress_display库学习笔记

    progress_display 用途 progress_display能够在控制台上显示程序的运行进度,假设程序运行非常耗费时间,那么它能提供一个友好的用户界 面,不至于让用户在等待中失去耐心,甚至 ...

  2. Android清除缓存功能来实现

    我们都知道在Android的设置->应用程序中能够查看应用程序的相关信息,当中有一个功能是清除缓存. 如图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZ ...

  3. JavaScript-2.2 document.write 输出到页面的内容

    <html> <head> <meta http-equiv="content-type" content="text/html;chars ...

  4. python2.7和 python3.4但是不要

    很多 Python 刚開始学习的人想知道他们应该从 Python 的哪个版本号開始学习.对于这个问题我的答案是 "你学习你喜欢的教程的版本号.然后检查他们之间的不同. " 可是假设 ...

  5. NPOI以及在ASP.NET MVC中的使用

    NPOI以及在ASP.NET MVC中的使用 1.前言 相信大家在工作中经常要遇到一些导入导出Execl操作.学习贵在分享,分享使人快乐,园子里的前辈已经有很多好的文章,鄙人也是能力有限,在这里把这些 ...

  6. 快速解读GC日志(转)

    本文是 Plumbr 发行的 Java垃圾收集手册 的部分内容.文中将介绍GC日志的输出格式, 以及如何解读GC日志, 从中提取有用的信息.我们通过 -XX:+UseSerialGC 选项,指定JVM ...

  7. DDD实践案例:引入事件驱动与中间件机制来实现后台管理功能

    DDD实践案例:引入事件驱动与中间件机制来实现后台管理功能 一.引言 在当前的电子商务平台中,用户下完订单之后,然后店家会在后台看到客户下的订单,然后店家可以对客户的订单进行发货操作.此时客户会在自己 ...

  8. WeakReference and WeakHashMap

    弱引用通过WeakReference类实现,弱引用和软引用很像,但弱引用的引用级别更低.对于只有弱引用的对象而言,当系统垃圾回收机制运行时,不管系统北村是否足够,总会回收该对象所占用的内存.当然,并不 ...

  9. Cookie基础

    周末百度笔试,答得题都会,就是不仔细不心细,提前一个小时交卷子,想起来就已经晚了.问了一个cookie的问题,我SB的蒙住了,于是乎,似乎是跪掉了,回来后总结了下Cooke的相关问题.###获取coo ...

  10. Webbrowser代理支持

    原文:Webbrowser代理支持 1 通过设置注册表,再用InternetSetOption发送INTERNET_OPTION_SETTINGS_CHANGED与INTERNET_OPTION_RE ...