Android no actualiza la base de datos SQLite

Estoy experimentando algunos problemas con una base de datos SQLIte en mi aplicación de Android. El problema es que la base de datos nunca se actualiza, ni siquiera en múltiples reinicios del emulador, de Eclipse o después de la eliminación de DDMS.

Este es mi método onCreate, ubicado en una clase que extiende SQLiteOpenHelper:

public void onCreate(SQLiteDatabase database) { try { database.execSQL(ESSENCE_TABLE_CREATE); database.execSQL(PACCO_TABLE_CREATE); database.execSQL(TAVOLE_TABLE_CREATE); database.rawQuery("insert into essenza values(1, 'Rovere')", null); // added later } catch (SQLException e) { Log.e("DB", e.getMessage()); } } 

Después de instanciar el ayudante, solicito una referencia a la base de datos:

  helper = new DBHelper(context, dbpath + "/" + DATABASE_NAME); database = helper.getWritableDatabase(); 

Parece que la instrucción rawQuery (que se agregó posteriormente) no se ejecuta y que la base de datos en uso se almacena en caché en una versión anterior. También intenté cambiar la versión de la base de datos, pero no funcionó. ¿Me estoy perdiendo de algo? Gracias por adelantado.

Tiene dos opciones:

  1. Utilice DDM para eliminar el archivo de base de datos del dispositivo (busque en / data / data /). Esto obligará a Android a ejecutar onCreate de nuevo.
  2. En su constructor, incremente la versión de base de datos que pasa a SQLiteOpenHelper. Agregue su consulta en bruto a onUpgrade.

Es probable que desee la opción 1. La opción 2 es mejor si tiene usuarios de la aplicación cuyas bases de datos desea actualizar.

  • ¿Por qué no puedo usar Resources.getSystem () sin un error de tiempo de ejecución?
  • SQLiteOpenHelper sincronización
  • cómo crear base de datos una sola vez, a continuación, leer y escribir varias veces desde él, SQLite, OpenHelper, Android
  • ¿Cuál es el modo de subprocesamiento predeterminado de SQLite en Android?
  • Cómo funciona SQLiteOpenHelper Context
  • Ejemplo de Android SQLite
  • Android obtener la imagen de disco de base de datos es malformado (código 11) error
  • Abra / cierre correctamente una base de datos con el patrón de diseño Singleton
  • Intentando probar SQLiteOpenHelper pero getWritableDatabase () lanza Null
  • AsyncTask de Android y instancia de SQLite DB
  • SQLiteOpenHelper - crear base de datos en tarjeta SD
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.