Sono nuovo ad Android e voglio creare una sorta di CRUD con SQLite.Ottieni percorso database
Ho un public class DataBaseHelper
, che dispone di un costruttore:
public DataBaseHelper(Context context)
{
this.context = context;
}
e un getter per datebase:
public SQLiteDatabase getDataBase() {
if (dataBase == null) {
try {
dataBase = context.openOrCreateDatabase(DataBaseHelper.dbName,
Context.MODE_PRIVATE, null);
dataBase.execSQL("CREATE TABLE " + DataBaseHelper.accountTblName + " " +
"(ID integer PRIMARY KEY AUTOINCREMENT" +
",name TEXT" +
",address TEXT" +
",password TEXT)");
}
catch(Exception e) {
Log.e(context.toString(), e.getMessage());
if (dataBase != null) {
dataBase.close();
}
}
}
return dataBase;
}
Se inizio di un programma per la prima volta - tutto sembra essere a posto. il database è nullo e io lo creo (con una tabella). Ma quando riavvio il database dell'app è nuovamente nullo e la tabella non può essere creata.
Ho deciso di scrivere una funzione checkDB, che tenta di aprire un database. Ma dove posso trovare un percorso? Non voglio che sia "hardcoded".
O forse sto facendo una specie di anti-pattern?
Dà un percorso String ?? Sono venuto a sapere che restituisce File. Come ottenere una stringa? –
@ Archie.bpgc 'context.getDatabasePath (DataBaseHelper.dbName) .toString;' – jmhend
ok. Grazie mille –