Skip to content

添加数据(Insert)

向数据库中新增数据,使用Insert操作。

在相关方法上加上注解@Insert

@Dao
public interface UserDao {
    @Insert(onConflict = OnConflictStrategy.REPLACE)
    void insertUsers(User... users);

    @Insert
    void insertBothUsers(User user1, User user2);

    @Insert
    void insertUsersAndFriends(User user, List<User> friends);
}

Insert注解中,给onConflict赋值

  • OnConflictStrategy.REPLACE表示当发生冲突(重复)时,会替换旧数据
  • OnConflictStrategy.ABORT是默认值,发生冲突时会停止新增操作
  • OnConflictStrategy.IGNORE表示忽略冲突,执行这一行的操作时会返回-1

如果 @Insert 方法只接收 1 个参数,则它可以返回 long,这是插入项的新 rowId。

如果参数是数组或集合,则应返回 long[] 或 List

作者: RustFisher
联系: rf.cs@foxmail.com
博客: rustfisher.com | RustFisher cnblog
示例: AndroidTutorial Gitee, Tutorial Github
链接: https://www.an.rustfisher.com/android/jetpack/room/room-add/
一家之言,仅当抛砖引玉。如有错漏,还请指出。