Android 开发 Room 问题:SQL error or missing database (no such table: User)

java 复制代码
@Dao
public interface UserDAO {

    ...

    @Query("SELECT * FROM User")
    List<User> queryAll();
}
  • 在 Android 开发中,使用 Room 时,启动项目时,上述代码出现如下错误信息

    错误: There is a problem with the query: [SQLITE_ERROR] SQL error or missing database (no such table: User)
    List<User> queryAll();
    ^

问题原因
  • 使用 Room 时, @Database 注解需要明确声明要映射到数据库表的数据库实体类
处理策略
  • 确保 @Database 注解包含所有数据库实体类
java 复制代码
// 原来是这样

@Database(entities = {Staff.class}, version = 1, exportSchema = false)
java 复制代码
// 修改成这样

@Database(entities = {User.class, Staff.class}, version = 1, exportSchema = false)
相关推荐
摇滚侠10 分钟前
在 SpringBoot 项目中,开发工具使用 IDEA,.idea 目录下的文件需要提交吗
java·spring boot·intellij-idea
云姜.15 分钟前
java多态
java·开发语言·c++
李堇18 分钟前
android滚动列表VerticalRollingTextView
android·java
Re.不晚21 分钟前
MySQL进阶之战——索引、事务与锁、高可用架构的三重奏
数据库·mysql·架构
老邓计算机毕设31 分钟前
SSM智慧社区信息化服务平台4v5hv(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·智慧社区、·信息化平台
泉-java38 分钟前
第56条:为所有导出的API元素编写文档注释 《Effective Java》
java·开发语言
麦聪聊数据1 小时前
为何通用堡垒机无法在数据库运维中实现精准风控?
数据库·sql·安全·低代码·架构
2301_790300961 小时前
Python数据库操作:SQLAlchemy ORM指南
jvm·数据库·python
zfoo-framework1 小时前
帧同步和状态同步
java
charlotte102410241 小时前
高并发:关于在等待学校教务系统选课时的碎碎念
java·运维·网络