相关疑难解决方法(0)

Android中使用的SQLite版本?

Android中使用的SQLite版本是什么?

原因:我想知道如何处理模式迁移.较新的SQLite版本支持"ALTER TABLE"SQL命令,这将节省我不得不复制数据,删除表,重新创建表和重新插入数据.

database migration sqlite schema android

266
推荐指数
4
解决办法
9万
查看次数

Android中的全文搜索示例

我很难理解如何在Android上使用全文搜索(FTS).我已经阅读了关于FTS3和FTS4扩展SQLite文档.而且我知道可以在Android上进行.但是,我很难找到任何我能理解的例子.

基本数据库模型

SQLite数据库表(已命名example_table)有4列.但是,只有一列(已命名text_column)需要为全文搜索编制索引.每行text_column包含长度从0到1000字不等的文本.总行数大于10,000.

  • 您将如何设置表和/或FTS虚拟表?
  • 你将如何执行FTS查询text_column

补充说明:

  • 因为只需要索引一列,所以仅使用FTS表(和删除example_table)对于非FTS查询来说效率低下.
  • 对于这样大的表,存储text_columnFTS表中的重复条目是不合需要的.这篇文章建议使用外部内容表.
  • 外部内容表使用FTS4,但在Android API 11之前不支持 FTS4 .答案可以假设API> = 11,但是评论支持较低版本的选项会很有帮助.
  • 更改原始表中的数据不会自动更新FTS表(反之亦然).在这个基本示例中,不需要在答案中包含触发器,但仍然会有所帮助.

sqlite android full-text-search

85
推荐指数
1
解决办法
3万
查看次数

如何压缩sqlite数据库

我的离线应用程序中有一个已达到 32mb 的 sqlite 数据库。它是从启动时的资产文件创建的,大小为 6mb。

是否有任何内置的压缩​​功能会永久导致数据库变小,我不介意阅读时的性能下降。然后它将使用较少的用户手机内存。

有任何想法吗?

DB 有两个表,它们大多是长文本字段。大小是首次应用程序启动时 7000 多次插入的最终结果。

compression sqlite android

5
推荐指数
1
解决办法
1万
查看次数