删除Sugar ORM中所有表中的所有数据

Fel*_*ade 3 android android-sqlite sugarorm

我在我的应用程序中使用Sugar ORM 1.5,我希望在用户注销时清除所有信息.

我想避免删除数据库文件或尽可能使用纯SQLite脚本.

我找到的唯一解决方案是在所有表上使用deleteAll,但我想知道是否有更好的方法来执行它.

问候,

编辑

我解决了在删除数据库SugarContext.terminate();之前删除数据库之前删除数据库的问题SugarContext.init(context);.

看起来这是Henry Dang在评论中指出的最佳解决方案,它比删除所有数据更快.

kuf*_*fel 10

这段代码对我有用.它终止上下文删除所有表并重新创建它们:

SugarContext.terminate();
SchemaGenerator schemaGenerator = new SchemaGenerator(getApplicationContext());
schemaGenerator.deleteTables(new SugarDb(getApplicationContext()).getDB());
SugarContext.init(getApplicationContext());
schemaGenerator.createDatabase(new SugarDb(getApplicationContext()).getDB());
Run Code Online (Sandbox Code Playgroud)

SchemaGenerator来自com.orm,我的SugarORM版本是1.5.