保存在文件中
本来用的是保存在文件中的h2数据库配置:
复制代码
1
2
3
4
5
6#保存在文件中的 #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的配置
老师要求的,每次重启都要新建表,删除所有数据:
复制代码
1
2
3
4
5
6#内存中每次刷新的 把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文件:
复制代码
1
2
3# 指定生成数据库的schema文件位置 spring.datasource.schema=classpath:schema.sql
最后
以上就是无私花卷最近收集整理的关于JPA自动建表找不到schema/Schema not found的全部内容,更多相关JPA自动建表找不到schema/Schema内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复