SQLite中的全文搜索
拜Google的Scott Hess同志所赐,SQLite也推出了全文搜索功能。
SQLite通过建立一个虚拟表,将输入的文字根据空格、标点符合等规则进行分词,组织成一棵B树,以此来提高搜索速度。
如何使用这一功能,性能上如何,大家各自研究去吧。
在这里我就汇报一下自己的研究成果:
1. SQLite的全文搜索大致是按照空格分词出一个个的单词,如果文章中有“asdf”这样一个词,那么,你就休想通过“sd”来找到这段内容了,因为他是以单词作为一个单位来组织的;
2. 既然是空格分词,自然就不支持中文了,除非你是把一个文章每个词都用空格或者标点符号分开;
3. SQLite提供了可自定义的词法分析器,具体的用法看文档;
4. 研究下porter这一语法分析器,参看源码文件“fts3_porter.c”,对于一个单词的多种词形,按照英文的基本规范,将多个词形统一为一个基本单词,具备了一定语义上的支持。
总结来说,目前是没有提供真正语义上的分词,这就要靠各位看官多多努力了,呵呵
官网关于全文搜索的链接:http://www.sqlite.org/fts3.html
相关文档:
这篇文章是使用SQLite C/C++接口的一个概要介绍和入门指南。
由于早期的SQLite只支持5个C/C++接口,因而非常容易学习和使用,但是随着SQLite功能的增强,新的C/C++接口不断的增加进来,到现在有超过150个不同的API接口。这往往使初学者望而却步。幸运的是,大多数SQLite中的C/C++接口是专用的,因而很少被使用到。尽管有这 ......
SQLite 作为一个轻量级嵌入式数据库,还是非常好用的。雨痕极力推荐~~~~~~
今天有个朋友测试 SQLite,然后得出的结论是:SQLite 效率太低,批量插入1000条记录,居然耗时 2 分钟!
下面是他发给我的测试代码。我晕~~~~~~
using System.Data;
using System.Data.Common;
using System.Data.SQLite;
......
1. 源代码的获取
sqlite是一个功能强大、体积小运算速度快的嵌入式数据库,采用了全C语言封装,并提供了八十多个命令接口,可移植性强,使用方便。
下载地址:http://sqlite.org/download.html
sqlite源代码:sqlite-3.6.17.tar.gz
2. sqlite移植到x86 for linu ......
SQLite Tutorial in PHP
SQLite is an SQL database manager used locally or on a website, and compatible
in particularly with PHP.
Summary
Installing SQLite and creating a database
.
Installing SQLite. Verifying the installation by creating a base.
Creating and using a SQLite tabl ......