"No hay un constructor por defecto disponible en android.database.sqlite.SQLitepenhelper" en Android Studio
Tratando de extender la clase con SQLiteOpenHelper, pero este error aparece: "No hay constructor por defecto disponible en android.database.sqlite.SQLitepenhelper" junto con otros "no se puede resolver el símbolo Categoría, Nota, …"
class DbHelper extends SQLiteOpenHelper { @Override public void onCreate(SQLiteDatabase db) { db.execSQL(Category.getSql()); db.execSQL(Note.getSql()); db.execSQL(Attachment.getSql()); db.execSQL(CheckItem.getSql()); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("DROP TABLE IF EXISTS " + Category.TABLE_NAME); db.execSQL("DROP TABLE IF EXISTS " + Note.TABLE_NAME); db.execSQL("DROP TABLE IF EXISTS " + Attachment.TABLE_NAME); db.execSQL("DROP TABLE IF EXISTS " + CheckItem.TABLE_NAME); onCreate(db); }
- SQLiteOpenHelper sincronización
- Android no actualiza la base de datos SQLite
- Por qué necesitamos onUpgrade (); Método en la clase SQLiteOpenHelper
- Error al insertar android.database.sqlite.sqliteconstraintexception error código 19 restricción fallida
- Cómo insertar a granel en sqlite en android
- Robolectric: ejecutar múltiples pruebas falla
- Intentando probar SQLiteOpenHelper pero getWritableDatabase () lanza Null
- Intenta reabrir un objeto ya cerrado: sqlitequery
- Confuso respecto a SQLiteOpenHelper y crear varias tablas
- La escritura concurrente a la base de datos android (de múltiples servicios)?
- Ejemplo de Android SQLite
- SQLiteOpenHelper - crear base de datos en tarjeta SD
- Abra / cierre correctamente una base de datos con el patrón de diseño Singleton
SQLiteOpenHelper
definir un constructor explícito que llama al constructor super
4 o 5 arg en SQLiteOpenHelper
.
Por ejemplo:
public DbHelper(Context context) { super(context, "database.db", null, 1); }
Donde database.db
es el nombre de archivo de la base de datos y 1
es la versión.
Si su hijo de DBHelper
entonces esta ayuda de la publicación, othervise usted puede allready understandfirst lo define como éste en fuera de usted clase, medios uperside …
private DBHelper ourHelper; private final Context ourContext;
Luego use esto
class DbHelper extends SQLiteOpenHelper { public DBHelper(Context context) { super(context, DB_NAME, null, DB_VIRSION); // TODO Auto-generated constructor stub } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(Category.getSql()); db.execSQL(Note.getSql()); db.execSQL(Attachment.getSql()); db.execSQL(CheckItem.getSql()); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("DROP TABLE IF EXISTS " + Category.TABLE_NAME); db.execSQL("DROP TABLE IF EXISTS " + Note.TABLE_NAME); db.execSQL("DROP TABLE IF EXISTS " + Attachment.TABLE_NAME); db.execSQL("DROP TABLE IF EXISTS " + CheckItem.TABLE_NAME); onCreate(db); }
Y luego intenta este contexto para tu clase de padre
public MyDatabase(Context c){ ourContext=c; }
- Incapaz de depurar android / chrome remotamente de ubuntu / linux
- Importar com.google.android.gms.location.LocationServices, no puede actualizar los servicios de ubicación