【问题标题】:delete database from genymotion emulator从 genymotion 模拟器中删除数据库
【发布时间】:2014-01-23 16:33:51
【问题描述】:

我正在开发一个应用程序,我在 sqlite 数据库中创建了几个表,但我的要求是需要更改表(可以删除或添加很少的列),第一次运行应用程序时,它会创建带有列的表,但是当我添加时几列并再次运行,然后这些列不会被添加。

我怀疑,因为数据库已经创建,所以控制不会转到数据库类中的oncreate

我的问题是我需要删除 genymotion 中已经创建的数据库,但不知道如何删除。

谁能解释一下在使用genymotion模拟器时如何删除它。

谢谢 湿婆

【问题讨论】:

    标签: android android-emulator android-sqlite genymotion


    【解决方案1】:

    一旦您更改了数据库方案,您需要在 SQLiteOpenHelper 实现中增加版本。这样做,下次您启动应用程序时,您可以处理数据库中的更改

    onUpgrade(SQLiteDatabase db,int old Version,int newVerison)
    

    在那里你可以做任何你喜欢的事情..alter table, drop table etc..

    或者..您可以简单地卸载您的应用程序。它将删除数据库。

    这里有一个很好的教程: http://www.vogella.com/tutorials/AndroidSQLite/article.html

    ps:对不起,这是升级而不是更新。

    【讨论】:

    • 这很好,但我不能一直卸载我的应用程序,在开发过程中它很好,但我需要在不卸载的情况下这样做。你能在onupdate上解释更多吗
    【解决方案2】:

    只需从模拟器中卸载您的应用并再次运行即可。卸载应用程序将删除所有相关文件和数据库。

    【讨论】:

    • 在 Eclipse 中转到 DDMS,然后浏览 /data/data/YOUR_PACKAGE_NAME/databases 并删除您的数据库文件。下次启动应用时,将创建新的数据库文件。
    【解决方案3】:

    我发现所有这些答案都很麻烦。将文件管理器放入Root权限,找到sqlite db文件并将其删除。对我来说似乎是最简单的路线......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-28
      • 2016-09-04
      • 2022-01-01
      相关资源
      最近更新 更多