我正在按照一个简单的教程创建一个从SQLiteOpenHelper扩展的类,并创建一个包含一个表和5行的数据库。
好的,但我需要了解一些关于android Sqlite数据库的更多信息。例如,如果应用程序关闭或手机关闭会发生什么?数据库是否已删除?
由于
答案 0 :(得分:10)
当然,数据库不会被删除。我假设你是以“正确”的方式做到这一点。在这种情况下,数据库是持久的。 (当然,如果您选择在临时目录中创建数据库或类似的东西,那么它将无法正常工作)。
这样想。该数据库基本上是一个文本文件。你正在对数据库做的是修改那个文本文件的内容(好吧它在现实生活中有点复杂,但它是一个很好的思考方式)。
一旦您对数据库进行了更改(例如添加了一行),数据库文件就会保存到磁盘上,从而使其保持不变。如果手机关闭或应用程序退出,则数据库文件仍然存在,您可以继续连接它。
答案 1 :(得分:4)
如果应用关闭或手机关闭会怎样?
答案为否,数据库未删除,您的数据仅在Uninstall
应用程序或Clear data
来自您设备的Application->Manage Application->Application_Name
时被删除。
答案 2 :(得分:3)
创建数据库时,它存在于应用程序专用文件存储中,只有在您明确删除它(使用Context.deleteDatabase)或卸载应用程序时才会被删除。
答案 3 :(得分:3)
仅当您的应用被删除时,用户才会清除数据库,用户会清除与之关联的数据,或者您以编程方式执行此操作。
因此,您的应用可能会被杀死或手机重启并且您的数据库仍然存在。这就是数据库被认为是持久存储的原因。