【发布时间】:2013-04-09 08:50:36
【问题描述】:
我对 Android 很陌生,在理解 android 中的 DB 概念时遇到了一些问题。
当我在 android 中创建我的表时,android 会给我的应用程序 static 空间吗?或者当我向其中添加更多数据时,数据库大小会以动态的方式增长?
如果它确实以动态方式增长它可以增长到最大多少空间?
我的应用程序创建的数据库是持久的? Android 向我保证 Android 操作系统不会删除我的数据?
【问题讨论】:
我对 Android 很陌生,在理解 android 中的 DB 概念时遇到了一些问题。
当我在 android 中创建我的表时,android 会给我的应用程序 static 空间吗?或者当我向其中添加更多数据时,数据库大小会以动态的方式增长?
如果它确实以动态方式增长它可以增长到最大多少空间?
我的应用程序创建的数据库是持久的? Android 向我保证 Android 操作系统不会删除我的数据?
【问题讨论】:
Sqlite 是一个数据库管理系统,不过是一个非常轻量级的 sql 版本。是的,当您将数据输入到它的表中时,数据库的大小会增加。它本身的数据( text,int,float,image )是由二进制信息组成的,所以它会发生。
如果它确实以动态方式增长,它可以增长到最大的空间是多少?
这取决于您的可用空间。
我的应用创建的数据库是持久的? Android 向我保证 Android 操作系统不会删除我的数据?
是的,数据样式是持久性的,只要您不以编程方式或手动方式删除它,它就会留在系统中。
【讨论】:
当您从应用程序创建数据库时,数据库保存在/data/data/APP-Name/Databases。随着您不断添加表,大小会增加,数据库的最大容量为 140 TB,并且是持久的。
【讨论】:
在 android 中,您的数据库作为文件保存在为您的应用程序分配的内部存储中,并且是持久的。
你的 dB 的共同路径是
/data/data/<your-package-name>/databases
查看实施限制here
【讨论】: