我不熟悉使用带有应用程序的sql数据库。
我创建了一个应用程序,可以使用用户手机中的信息(例如位置)实时更新SQL数据库。当应用程序停止时,应用程序会停止存储此数据。但是,当我提取数据库时(通过使用adb备份将应用程序文件备份到tar文件中),数据库文件似乎已停止更新7小时之前我停止了应用程序和时间戳该文件“最后修改”也比我预期的早7个小时。查看数据,数据库每隔一秒钟更新一次,直到此时都没有任何差距。
我想知道为什么数据库在某个点之后停止更新,即使应用程序没有停止。
sql数据库是否有数据/记录限制?创建SQL数据库和更新SQL数据库之间通常存在差距吗?
我在Android Studio中创建了应用。以下是在收到数据时更新表的JAVA代码:
//Upgrade Method
// Lets you drop a tables when there is an update
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS "+myDataTable);
onCreate(db);
}
//Update table Method
public boolean insertData(final String results1, final String results2) {
SQLiteDatabase db = this.getWritableDatabase();
//create instance of contentvalue
ContentValues contentValues = new ContentValues();
//put the column and value information inte contentValues.put() function
contentValues.put(col1, results1);
contentValues.put("myData", results2);
//actually insert the data
long result = db.insert(myDataTable, null, contentValues);
if (result==-1)
return false;
else
return true;
}
我希望你告诉我数据库需要花费数小时才能更新,如果我再次提取db文件,那么所有数据都会在那里!!
答案 0 :(得分:0)
如果我理解你的问题并且根据我的知识,使用Android提供的某种方法将数据写入sqlite数据库之间没有时间间隔,如
db.insert(String table, String nullColumnHack, ContentValues values);
并将数据反映在表格中。插入数据时应该出错。检查插入函数的返回值。如果它已返回-1,那么插入时会出错。