2。将光标存储在HashMap中: h3>
如果需要在该应用程序中进一步将光标存储在散列表中,这是否好。
public SQLiteDatabase initDatabase(){
Log.v("XIG","creating or opening database.");
db_helper= new DatabaseHelper(context,dbname,1);
DB = context.openOrCreateDatabase(dbname,SQLiteDatabase.CREATE_IF_NECESSARY, null);
DB.setVersion(1);
DB.setLocale(Locale.getDefault());
DB.setLockingEnabled(true);
DB = db_helper.getWritableDatabase();
return DB;
}
public void insertRecord(String Table,String columnId[],String value[],String typeOfValue[]){
initDatabase();
Log.v("XIG","creating new record.");
ContentValues new_record = new ContentValues();
for(int i=0; i
if(typeOfValue[i].equals("INT")){
new_record.put(columnId[i],Integer.parseInt(value[i]));
}
else{
new_record.put(columnId[i],value[i]);
}
}
long rowid;
try{
DB.beginTransaction();
rowid = DB.insert(Table,null,new_record);
DB.setTransactionSuccessful();
}
finally{
DB.endTransaction();
}
Log.v("XIG","inserted rowid in "+Table+": "+rowid);
closeDatabase();
}
异常: H3>
initDatabase() method shows exception :
07-12 13:15:32.415: E/SQLiteDatabase(13643): close() was never explicitly called on database '/data/data/com.app/databases/mydb3'
07-12 13:15:32.415: E/SQLiteDatabase(13643): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here