如何使用默认值重新创建数据库?

时间:2012-05-05 19:34:37

标签: android

在我的应用程序中,我想删除现有数据库并使用默认值创建一个新数据库。可以从XML将默认值插入数据库。

有没有人知道如何重用数据库?

2 个答案:

答案 0 :(得分:1)

假设您使用的是SQLite数据库,要删除数据库中所有表中的所有行,您可以使用db.execSQL()并注意此问题的建议Drop all tables command

  

您可以使用以下 DANGEROUS 命令执行此操作:

 PRAGMA writable_schema = 1;
 delete from sqlite_master where type = 'table';
 PRAGMA writable_schema = 0;
     

然后,您希望使用

恢复已删除的空间
 VACUUM
     

并确保一切正常的良好测试

 PRAGMA INTEGRITY_CHECK;

如果您还没有写过阅读XML数据的方法,那么这是非常好的阅读:Store parsed xml data to sqlite ? Android

答案 1 :(得分:0)

基本上这不是Android特定的问题。

首先,您希望何时使用默认值以及如何触发它来重新创建数据库。

  • 在按钮点击等UI事件中?
  • 或者当您开始/停止或销毁您的活动时?

在任何情况下,您都需要删除数据库并重新创建整个结构(表,关系等)。