0

我刚刚完成了 Notepadv# 教程。然后,我通过控制台(adb shell)连接“数据”文件 Notepadv3 教程。我尝试了一些东西。

  1. 删除notes表,重新运行。
    • 不工作。
  2. 删除数据文件(db文件),重新运行。
    • 工作。

如果您学习过 Notepadv# 教程,您可能会了解 NotesDbAdapter 类中的一些预处理。在那个代码位置,我在构造函数上找到了“选择数据库”,在 onCreate 方法上找到了“创建表”,在 onUpgrade 方法上找到了“更新表”。

通过该方法,数据库(名为数据的文件)在构造函数后调用 onCreate 时创建表。没办法,那没用。以上2个傻逼测试就是那一派胡言造成的。有没有人把笔记表放在控制台上?我找不到为什么 create 不起作用。

ps - 很抱歉愚蠢的英语。

4

2 回答 2

3

如果数据库不存在,您的数据库 onCreate 方法只会创建数据库。如果它已损坏(即您已删除 Notes 表)或存在但为空,则由应用程序检测并恢复。

这就是为什么当您删除表时记事本示例失败的原因(数据库存在,因此未调用 onCreate 并且您的数据库已损坏),但是当您删除数据库时它确实有效,因为调用了 onCreate 并重新创建了数据库。

所以基本上,不要那样做:-)

有关更详细的描述,请参阅SQLiteOpenHelper文档。

于 2011-01-28T10:12:26.870 回答
0

试图从设置->管理应用程序卸载应用程序或删除应用程序数据?

于 2011-01-28T09:00:14.683 回答