SQLite
 sql >> Base de données >  >> RDS >> SQLite

La bibliothèque de salles Android ne parvient pas à copier la base de données à partir de l'actif

En fait, j'ai eu une réponse à partir de ce lien

Salle :Base de données non créée

when I tried to insert data that time database is copied from asset and data is inserted certaines personnes seront confrontées à une exception de migration, j'ai résolu cela en supprimant la table principale de la salle de la base de données des actifs.

Sous les couvertures, par défaut, Room utilise SQLiteOpenHelper , autant que vous pourriez l'utiliser directement.

SQLiteOpenHelper ne crée pas la base de données lorsque vous créez l'instance SQLiteOpenHelper. Il le fera une fois que vous aurez appelé getReadableDatabase() ou getWriteableDatabase() .

Du point de vue de Room, cela signifie que jusqu'à ce que vous effectuiez une opération concrète, telle que l'appel d'une méthode @Dao qui accède à la base de données, votre base de données ne sera pas créée.