问题标签 [fts3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 如何在 SQLite fts3 全文搜索中编写包含查询
我想在我的索引表中进行全文搜索,即 sqlite fts3。
例如; 数据集是 { "David Luiz", "David Villa", "Diego Costa", "Diego Ribas", "Diego Milito","Gabriel Milito", }
当我输入“vid i”时,我想得到 {“David Luiz”,“David Villa”}
在 SQLite 的文档中,我发现了这个 http://www.sqlite.org/fts3.html#section_3 但它只包含查询开头。
我不知道这可能与否。如果可以在 sqlite fts3 中进行搜索,任何帮助将不胜感激
android - 在大型数据集上使用自动建议实现 AutoCompleteTextView/SearchView
我想问一下我在我的应用程序中实现搜索的概念是否正确以及是否可以改进。我将提供所需的任何细节,因此我相信我的问题非常适合这个网站。
- 我需要对大型 SQLite 表(约 20 列,可能 1000-1500 条记录 - 您可以将其视为超市中的商品目录)进行搜索。搜索应该在超过 1 个表(即 1 个目录)上执行,但我也可以强制用户选择特定表(尽管我想避免它)。
- 为了提高搜索效率,我将使用 SQLite FTS3 表。
- 我想进行快速搜索,以便在用户键入查询字符串时快速显示结果。例如,当输入产品制造商的片段时,应显示与该字符串匹配的所有产品。完美的解决方案是,如果用户可以同时输入一列的片段和另一列的片段,尽管我认为这对于 Android 设备来说可能有点太多了。
问题:
- 我应该将 a
SearchView
与 aa 一起使用ListView
(并在 中显示搜索结果ListView
)还是应该使用AutoCompleteTextView
? - FTS3 表是否是正确的方法(即它是否足够快)以有效地对多个(大)表执行搜索?
我的目标是 Android 版本 >= 3.0。
android - Android SQLite fts3:我应该插入什么:空值或空字符串?
我为一个包含几列的 Android 应用程序创建了一个 SQLite FTS3 表。该表由用户的输入填充。但是,并非所有表列都应该有一个值。示例:有一个名为 PLURAL 的列。用户提交的单词是动词(不是名词),因此 PLURAL 列不应该有值。
我应该在 PLURAL 列中输入什么,NULL 值或空字符串“”?
除了影响答案的逻辑之外,如果我在空字符串值上使用 NULL,数据库性能是否有任何显着差异?如果我使用 NULL 值,是否有任何已知问题(例如抛出异常)?
我在网上搜索了一些关于其他数据库的意见,但在 SQLite fts3 上没有。
谢谢!
android - "SQLiteException error: No such table" if I change the table's name in the same DB and run again the app
I have created a fts database DATABASE_NAME and a table FTS_VIRTUAL_TABLE.
I can insert and select values.
If I change the name of the table in my code e.g. FTS_VIRTUAL_TABLE_NEW keeping the same database DATABASE_NAME and run the application I get a SQLiteException error: No such table: FTS_VIRTUAL_TABLE_NEW. I wonder, why, since in onCreate method the proper SQL statement exists. Shouldn't the FTS_VIRTUAL_TABLE_NEW have been created?
However if I change not only the name of the table but also the name of the database (i.e. new database) everything works. The app runs normally (of course with no values in the database initially).
I don't understand why I can't only change the name of the table keeping the same database.
c# - Windows Phone 8 SQLite + FTS3
我想在 windows phone 8 上使用支持 fts3 的 sqlite。
我为 windows phone 8 下载了 sqlite vsix 包。但是 sqlite 不支持 FTS3。有什么方法可以在 Windows Phone 8 中使用带有 FTS 支持的 SQLite?我应该从源代码编译我自己的 sqlite 版本并设置 SQLITE_ENABLE_FTS3 标志吗?
谢谢神话。
sql - SQLite FTS3 - 对多个表进行全文搜索
我的表中有一个brand_name
列,我的brand_names
表中有一个product_name
列product_names
。
目前,我有两个单独的 SELECT(一个 onbrand_names.brand_name
和一个 on product_names.product_name
),我使用 UNION 将两个结果集 OR 在一起。但是,当搜索“SomeBrandName Some Product Name”时,即使存在这样的产品,我的 SQL 也会返回零个结果(这是因为术语-SomeBrandName
Some
Product
和Name
-不会全部出现在)。brand_names.brand_name
product_names.product_name
所以我需要帮助来计算 SQLite / FTS3 等价物......
SELECT
(brand_names.brand_name || ' ' || product_names.product_name) AS brand_and_product_name
FROM
brand_names, product_names
WHERE
brand_and_product_name MATCH 'SomeBrandName Some Product Name'
我需要实现此目标的实际 SQLite / FTS3 SQL 是什么?
在研究方面,我已经阅读了SQLite FTS3 指南,但没有提到多个表。
我还看到了一个类似的问题,它更高级一些,因此对于我在这里尝试实现的简单搜索可能有点过分。
java - 如何使用常规表中的内容填充 fts 虚拟表?
我刚刚发现使用虚拟表搜索数据库内容的可能性。然而,我已经坐了两天了,我想我每过一个小时就会变得更愚蠢。有人可以为我提供一个简单的例子来说明我如何做到这一点吗?
这就是我所在的位置:我有一个数据库类:
如何使用 populateVT() 使用 ITEM_TABLE_NAME 中的内容填充虚拟表?我应该在哪里调用它,以便每次用户向数据库添加内容时它都会更新?
android - Android Sqlite FTS3 如何选择以开头的单词?
例如,如果我有这些记录
单词
AAA
AAB
AAC
呸呸呸
对于普通表,我会使用 sql 之类的
我如何使用 FTS3 表进行选择?另外我想知道FTS3在这种查询下是否仍然比普通表有更好的性能?
android - sqlite全文搜索中的突出显示/粗体文本
我想知道 SQLite FTS3 和 FTS4 是否支持点击突出显示?文档说片段功能可用于文本格式化。我实现了相同但它不返回格式化文本。我在未回答问题中的详细代码在这里
任何帮助将不胜感激。谢谢