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 queryAll();
    ^

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

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

@Database(entities = {User.class, Staff.class}, version = 1, exportSchema = false)
相关推荐
心中有你021417 分钟前
Java实现Dijkstra最短路径算法(邻接表 + 优先队列)
java·数据库·算法
龙亘川32 分钟前
综合素质评价业务建模:从过程性评价到成长档案全链路闭环
数据库·智慧城市·数据可视化
数据库小组37 分钟前
NineData 实战教程:MySQL 5.5 数据迁移同步到 MySQL 8.0(跨版本升级)
数据库·mysql·mysql优化·数据库开发·数据库迁移·版本升级·数据复制
步行cgn1 小时前
Spring MVC + Thymeleaf 模板解析失败:从 500 错误到页面正常显示
java·spring·mvc
zhangjw341 小时前
1-5 PostgreSQL 数据类型全集:基础类型、字符串、数值、时间类型
数据库·postgresql
lgcgkCQ1 小时前
【AI 转型实战 1】SpringAI 入门:搭建基础大模型对话能力
java·ai·agent·rag·spring ai·mcp·langchain4j
王中阳Go1 小时前
5.27 分钟干完后端和全部测试:一场三小时笔试的五个失分点,四个不在代码上
大数据·数据库·人工智能·后端·大语言模型
Wang's Blog2 小时前
Java 项目实战:交友项目 - 用户体系集成总结
java·开发语言·交友
学到老活到老2 小时前
第 24 集:配置文件写了 80,Spring Boot 为什么读到 90?
java·后端·spring
cnskylee2 小时前
【MySQL】麒麟V10 SP3系统安装MySQL-Commercial-8.0.46
数据库·mysql·adb