我正在尝试在数据库中存储一些使用DDMS从KML文件中获取的GPS数据,问题是每次运行程序时我都会存储这些数据。这意味着我存储了几次。之后,我必须根据存储在Sqlite中的GPS数据创建路线。
现在的问题是我不能正确使用这条路线,因为在我的数据库中是一团糟。如此多的数据存储了太多次。是否有人知道如何才能正确完成这项工作。我在Android 2.1上运行
答案 0 :(得分:1)
重写数据库初始化逻辑,以便存储数据库已初始化的指示符。 (SharedPreferences对此有利。)然后测试指标并在启动时跳过数据库初始化,如果指示器显示它已经完成。
答案 1 :(得分:1)
如果您每次只是插入数据,则可以切换到REPLACE。然后,这将替换现有数据(如果数据匹配)。就个人而言,我会更改您的数据库设置代码。
使用一个简单的方法是user_version pragma。这允许您为数据库获取或设置数据库“版本”。它默认为0,因此您可以在应用程序启动时检查它,如果它是0,则初始化数据库然后将其设置为1.随后的应用程序启动将跳过数据库初始化。
PRAGMA user_version
PRAGMA user_version = 1