我是靠谱客的博主 无私花卷,最近开发中收集的这篇文章主要介绍JPA自动建表找不到schema/Schema not found,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

保存在文件中

本来用的是保存在文件中的h2数据库配置:

#保存在文件中的
#spring.datasource.url=jdbc:h2:~/test;AUTO_SERVER=TRUE;
#spring.datasource.driverClassName=org.h2.Driver
#spring.datasource.username=sa
#spring.datasource.password=sa

所以可以手动建一个schema,因为下次重启不会删除这些结构。

mem的配置

老师要求的,每次重启都要新建表,删除所有数据:

#内存中每次刷新的 把schema删掉了
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.username=sa
spring.datasource.password=sa
spring.datasource.driverClassName=org.h2.Driver

所以手动创建schema会失效。而在sql语句里写的话,也会因为JPA会先创建表,再运行sql语句,所以报错:找不到schema。

网上找了很久都没有相关配置,所以只能把dao层和sql文件,和entity文件里的schema配置删除了。直接建表,之后就对了。
在这里插入图片描述

有一个快捷一点的方法,就是选中 MOBILE. 这段代码 ,然后ctrl+f,在这里插入图片描述
按这个键可以选中此文件里所有与这个匹配的,然后一键删除,比较方便。

解决方案:

今天碰巧找到了,原来不仅有数据的sql文件,还有建立结构的sql文件:

# 指定生成数据库的schema文件位置
spring.datasource.schema=classpath:schema.sql

最后

以上就是无私花卷为你收集整理的JPA自动建表找不到schema/Schema not found的全部内容,希望文章能够帮你解决JPA自动建表找不到schema/Schema not found所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部