【问题标题】:(Android) better to store a single table of data in sqlite or as a text file? [closed](Android)更好地将单个数据表存储在 sqlite 中或作为文本文件? [关闭]
【发布时间】:2017-04-17 17:09:23
【问题描述】:

我有一个完全结构化的单一数据表,我的应用将需要它。

它由几千行、由空格分隔的三列组成(在我加载的文本文件中),我需要为它们分配特定的优先级。

该优先级存储为 int 并将被修改。 我考虑将整个内容保存在内存中(它是相当短的字符串),并在会话结束时简单地写入具有更新的 int 值的文本。另一种方法是我更新为应用程序功能的单个 sqlite 表。

我相信无论哪种方式都很好,但只是出于好奇,读取/写入 sql 表或文本解析会执行更差?

【问题讨论】:

  • 问题不够精确。 “快”取决于很多事情,可能是主观的。这取决于您需要对数据做什么。如果您只需要访问第一个/最后一个项目,那么队列在内存使用方面甚至应该更好......但是如果您可能有随机访问,或者按顺序访问,或者......有太多参数无法回答问题正确。
  • 我会选择数据库表。所以要有搜索,平均,分组,uèdating,插入,删除......的能力,而不必编写所有的例程来做到这一点。并且无需一次将所有数据保存在内存中。
  • @Feuby 现在好点了吗?

标签: android sql parsing local-storage text-parsing


【解决方案1】:

正如@Rotwand 所说,您应该只为提供的全部功能而选择数据库。仅当您仅访问第一行/最后一行,或者按顺序选择数据时,文本解析可能会更快。 在其他情况下,尝试优化文本解析将导致您获得与数据库等效的东西,因此无需重新发明轮子。

如果您有特定的需求(复杂的对象结构、很少的对象......),文本解析(或序列化)也可能是一个选项,但数据库应该仍然是一件好事,至少有更多的访问选项。

【讨论】:

  • 谢谢,接受作为答案。我真的想不出办法让它比现在更宽。
猜你喜欢
  • 1970-01-01
  • 2014-08-12
  • 2019-04-09
  • 1970-01-01
  • 2022-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-20
相关资源
最近更新 更多