PDA

Ver la Versión Completa : Borrar database tras finalizar la aplicacion.


daniel_gs
24/08/12, 20:23:24
Buenas:

Ya tengo creada mi base de datos con SQLite, el problema es que cuando comienza la aplicacion guarda los nuevos datos tras los anteriores cuando me gustaria que cada vez que empezara la aplicacion creara una base de datos nueva y que la vieja se borrase.

¿Alguien me puede hechar una mano?

gracias.

kriogeN
24/08/12, 20:41:32
Cuando abres el programa ejecuta un DELETE sobre las tablas y listo.

También puedes hacerlo al cerrar la aplicación, pero entonces si tu programa termina de forma anormal (FC, TaskKiller, reinicio del móvil, etc) no te borrará los datos.

daniel_gs
27/08/12, 18:35:32
Despues de darle muchas vueltas he conseguido borrarla cuando comienza el programa, lo malo es que no se como cerrarla, he pensado que cada vez que la utilizo podria cerrarla pero entonces no se como abrirla cuando quiero meter un nuevo dato, existe algo que sea como open

Muchas gracias.

angelfmarcos
28/08/12, 10:22:57
Despues de darle muchas vueltas he conseguido borrarla cuando comienza el programa, lo malo es que no se como cerrarla, he pensado que cada vez que la utilizo podria cerrarla pero entonces no se como abrirla cuando quiero meter un nuevo dato, existe algo que sea como open

Muchas gracias.

close?


public class DBAdapter
{
...
private DatabaseHelper DBHelper;
private SQLiteDatabase db;

public DBAdapter (Context ctx)
{
this.context = ctx;
DBHelper = new DatabaseHelper (context);
}

private static class DatabaseHelper extends SQLiteOpenHelper
{
DatabaseHelper(Context context)
{
super (context, DATABASE_NAME, null, DATABASE_VERSION);
}

@Override
public void onCreate (SQLiteDatabase db)
{
db.execSQL (DATABASE_CREATE);
}

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

//---opens the database---
public DBAdapter open () throws SQLException
{
db = DBHelper.getWritableDatabase ();
return this;
}

//---closes the database---
public void close ()
{
DBHelper.close ();
}
...
}



Este es el código que uso yo para la gestión de BBDD. Espero que te pueda servir de ayuda.

Un saludo.