当前位置: 首页 > news >正文

Navicat更改MySql表名后IDEA项目启动会找原来的表

问题:找不到表,项目启动失败

MySQL 里已经 RENAME TABLE old_name TO new_name; 了,但项目一启动就抛
Table 'xxx.old_name' doesn't exist,说明 代码/配置里还有地方没改
按下面 4 个层次一次性扫干净即可解决。


  1. Java 实体/映射层(最常见)

  • JPA:@Table(name = "old_name") → 改成新表名
  • MyBatis XML:<select id="xxx" resultType="Xxx" table="old_name"> 或 SQL 语句里写死的 FROM old_name
  • MyBatis-Plus:@TableName("old_name")
  • Hibernate:hibernate.hbm2ddl.auto=validate 时也会校验表名,务必同步。

  1. Spring 配置文件

  • spring.datasource.schema/data 里如果写了 old_name.sql 初始化脚本,一起改名。
  • Flyway/Liquibase 脚本:
    • 若已执行过的脚本里包含旧表名,不要改历史脚本,而是 新增一条迁移脚本 把旧表 rename 成新表;
    • 若脚本尚未在生产执行,可直接改脚本后重新跑。

  1. 二级缓存 / MyBatis-Plus 全局缓存

  • MyBatis-Plus 3.4+ 默认带 表映射缓存,改表名后缓存仍指向旧表。
    解决:清掉 target/build/ 目录,重新编译;或在启动参数里加
    mybatis-plus.global-config.db-config.table-underline=true
    mybatis-plus.configuration.cache-enabled=false
    
    临时关闭缓存验证。

  1. 数据库连接池 / 多数据源路由

  • 若用了 ShardingSphere、动态数据源
http://www.lryc.cn/news/618869.html

相关文章:

  • 腾讯codebuddy.ai 安装实测【从零开始开发在线五子棋游戏:完整开发记录】
  • 服务降级方式
  • 2025年最新原创多目标算法:多目标酶作用优化算法(MOEAO)求解MaF1-MaF15及工程应用---盘式制动器设计,提供完整MATLAB代码
  • 拖动式看板工具TOP6:2025最新评测
  • 疯狂星期四文案网第37天运营日记
  • 看懂 Makefile 第一课:基础
  • 企业培训笔记:宠物信息管理--实现宠物信息的添加
  • c#,vb.net全局多线程锁,可以在任意模块或类中使用,但尽量用多个锁提高效率
  • 行业分享丨SimSolid 在汽车零部件开发中应用的可行性调研及实践
  • 基于Hadoop的汽车价格预测分析及评论情感分析可视化系统
  • 海信IP108H(53U1M)_S905L-B主控-无线SV6051P/8822CS(通刷咪咕mg100_mg101)线刷固件包
  • grpc浅入门
  • 一键生成 Android 适配不同分辨率尺寸的图片
  • 什么是 Spring MVC?
  • AuthController类讲解
  • 龙舌兰人造植物、Apple Watch保护壳、厨房水槽收纳架、家居磁性挂钩等亚马逊热销单品,正在外观专利TRO维权!
  • 备战国赛算法讲解——马尔科夫链,2025国赛数学建模B题详细思路模型更新
  • VUE+SPRINGBOOT从0-1打造前后端-前后台系统-会议记录
  • Linux网络--2.2、TCP接口
  • 5 重复匹配
  • 51 单片机分层架构的模块依赖关系图
  • 详细解释RBFT和NoxBFT及RAFT的差异
  • PCIe Electrical Idle Sequences ( EIOS and EIEOS )
  • Java 22 新特性:字符串模板(String Templates)让拼接更优雅、更安全
  • 机械学习--TF-IDF实战--红楼梦数据处理
  • 什么是iOS超级签名?为何它能解决企业签名的“掉签”难题?
  • 如何在idea中导入外来文件
  • provide()函数和inject()函数
  • 力扣-394.字符串解码
  • Spark Core 3.3.2 略讲~