在 Android ORM 中,如何在 SQLite 的表中添加一些初始值我通常在 SQLite 的 onCreate 中执行此操作。 但是在房间里我怎么能做到这一点意味着在数据库上创建后会添加一些初始值。 谢谢你的回答。
最佳答案
您可以使用最新版本的 Room 库中提供的 RoomDatabase.Callback 来做到这一点。
您需要实现 RoomDatabase.Callback 的 onCreate 和 onOpen 方法,并将其添加到 RoomDatabase.Builder 中,如下所示。
RoomDatabase.Callback
RoomDatabase.Callback rdc = new RoomDatabase.Callback(){
public void onCreate (SupportSQLiteDatabase db){
// do something after database has been created
}
public void onOpen (SupportSQLiteDatabase db){
//do something every time database is open
}
};
向房间数据库构建器添加回调
yourDatabase = Room.databaseBuilder(context,
YourDatabase.class, "your db").addCallback(rdc).build();
引用:https://medium.com/@srinuraop/database-create-and-open-callbacks-in-room-7ca98c3286ab
关于具有初始值后的android房间ORM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45022813/