使用SQlite在整个表中搜索关键字

时间:2013-01-12 09:20:31

标签: java sql sqlite

使用关键字搜索数据库:

有没有办法查询整个SQLite数据库表中的匹配单词。我试图在关键字JTextField中添加一个单词,以便搜索整个Job表并返回包含该匹配单词的行。每行代表一个独特的工作。

我认为下面的剪切结构不会达到结果

SELECT * FROM Job WHERE Job MATCH 'Microsoft';

任何快速简单的建议?

2 个答案:

答案 0 :(得分:0)

看来您可以使用您建议的语法,只要它是全文搜索表:

http://www.phparch.com/2011/11/full-text-search-with-sqlite/

您应该阅读official SQLite documentation on FTS tables。请注意,这些是“虚拟”表,因此不会以相同的方式使用数据库文件 - 这可能不是您想要的,但它与您正在寻找的语法相匹配。链接的SQLite页面有很好的描述。请注意,FTS模块是可选的额外功能,可能无法安装。

只要使用占位符,就不必担心SQL注入攻击。查看this SO question,特别是代码片段的第二个答案。基本上,您在语句中放置了?,然后提供字符串以替换为查询函数的参数。那应该为你做SQL转发。

答案 1 :(得分:0)

我不知道sqlite但是在mysql中我们有全文搜索,用作

从表格中选择*匹配(名称)与('值')

只是看到天气全文搜索在sqlite中是否存在,我发现此链接验证了它

http://www.sqlite.org/fts3.html#section_3