2017-04-08 122 views
2

我正在创建一个基于android的约会管理系统。为了存储约会我正在使用SQLite数据库。该应用程序工作完美无瑕,但唯一的问题是,每次我重新启动应用程序时,数据库都会被重新创建。以下是我的onCreate和onUpgrade方法。 (PS。我用在创建和连接数据库的视频教程。这工作得很好了他。唯一的区别是我使用的是Mac和他使用的是Windows)在应用程序重启时重新创建SQLite数据库

public DatabaseHelper(Context context) { 
    super(context, DATABASE_NAME, null, 1); 
} 

@Override 
public void onCreate(SQLiteDatabase db) { 
    db.execSQL("create table " + TABLE_NAME + " (ID INTEGER PRIMARY KEY AUTOINCREMENT, DATE TEXT, TIME TEXT, TITLE TEXT, DETAIL TEXT, UNIQUE(DATE, TITLE))"); 
} 

@Override 
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
    db.execSQL("DROP TABLE IF EXITS" + TABLE_NAME); 
    onCreate(db); 
} 

以防万一,我已经上传我的完整的数据库连接代码在这里, Database.java

+0

DATABASE_NAME''为空吗? – laalto

+0

不,它被设置为DATABASE_NAME =“appointment.db” –

+0

您正在使用模拟器还是真实设备? –

回答

0

很难说没有看到整个类,但你可能会无意中删除数据库的地方?寻找可能被埋在某处的deleteDatabase调用,特别是如果您基于可能遗留了代码和代码的教程代码。

+0

其实它不叫任何地方,另一个问题是,数据库更新querries根本不工作 –

+0

,以防万一我的代码可以在这里找到, [链接] https :?//docs.google.com/document/d/1Gl9uVnwKbZCDSThUQ-alFrkMdBbLylmUeaCTFvtsE4A/edit USP =共享 –

相关问题