在我的android应用程序中,我计划在本地存储数据以减少互联网的数据使用并允许离线访问。我当前的模式包含9列。其中2列用于存储URL,一个用于140个字符的纯文本,1个用于日期时间,2个用于100个字符的纯文本,另外3个用于整数。要插入的记录数量取决于用户,即他需要多少记录。他可以随时删除它们。多次记录要插入一次。与删除相同。 现在我的问题是,这会导致应用程序在插入,删除和维护方面超负荷?我首先想到了将这些数据存储在文件系统(xml文件)中,但是删除记录可能很困难。所以我应该去SQLite方法或XML文件作为存储。其他解决方案也受到欢迎。SQLite模式,数据库大小,访问速度,更新疑惑
回答
我会推荐SQLite over xml用于你想要做的事情。 SQLite将会更快,更简单恕我直言。我已经完成了从两个读取。从来没有做过插入和更新。
xml文件将不得不被打开,然后解析以获取任何数据,关闭:0)你是正确的,删除,更新,插入将是一个XML文件更加困难。
是的是的,我绝对会说去SQLite。你所描述的模式实际上是非常适中的,你所描述的使用模式并不重要。
SQLite旨在能够以高效的方式将相当大量的数据保存在设备的存储中。这对于将数据存储在XML中并不是一种特别有效的格式,并且在考虑尝试获取单个记录时速度要慢一个数量级。
我自己编写的应用程序包含超过15个不同的表格,每个表格> 10列,这是Sqlite轻松处理的要求。
感谢您的回应。我会坚持SQLite。 :D – SachinGutte 2012-02-27 19:25:50
要考虑的好点:0)+1 – bytebender 2012-02-27 19:26:19
- 1. 更改数据库的访问模式
- 2. 在Android中访问.sqlite数据库(> 1Mb大小)
- 3. Android - SQLite数据库访问
- 4. 访问SQLite数据库
- 5. SQLite数据库访问Xamarin.form
- 6. 数据库模式更新
- 7. 更新SQLite数据库的问题
- 8. 更改速度数据网络模式
- 9. 访问2010数据库分解大小
- 10. SQLite数据库大小太大
- 11. WCF模仿疑惑
- 12. Android数据绑定疑惑
- 13. Android:更新SQLite数据库
- 14. 更新iPhone SQLite数据库
- 15. 更新SQLite数据库android
- 16. 更新数据库SQLite的
- 17. sqlite数据库更新
- 18. Android SQLite数据库更新
- 19. 从sqlite数据库访问数据
- 20. 从sqlite数据库访问数据?
- 21. 读取大量数据时速度更快:XML或SQLite
- 22. 用sqlalchemy和elixir更新sqlite数据库模式
- 23. 加速数据库更新
- 24. Android SQlite访问速度不够快?
- 25. 当服务器数据库更新时更新sqlite数据库
- 26. SQLite数据库不会更新数据
- 27. SQLite - 预分配数据库大小
- 28. 在SQLite中查询数据库大小
- 29. asp.net访问数据库没有更新
- 30. 如何在速度模板中访问/获取数组/集合的大小?
事情是,我使用本地存储作为缓存以及从服务器下载的图像。如果SD卡可用,将使用它,如果没有使用内部存储器。没有限制多少图像下载和上面的sqlite数据库插入,因为它是用户的选择。但同时,我不希望我的应用程序不响应或花费太多时间来处理所有这些事情。 – SachinGutte 2012-02-27 19:09:25
不知道你对Android开发有多熟悉,但是我使用AsyncTask来确保这些事情能够尽可能快地发生并且不会束缚你的UI线程(继续响应)。另外,您可以在SD卡或内部存储器中存储位于数据库中的图像和其他文件的位置。 – bytebender 2012-02-27 19:14:19
你也可以考虑使用服务来做一些工作,当设备不使用... – bytebender 2012-02-27 19:15:22