我希望每次应用程序运行时自动删除表并创建一个新表,并自动插入预定义数据.我已经在import.sql中准备数据了.我已经在application.properties中设置了spring.jpa.hibernate.ddl-auto = create-drop.但是,为什么我会收...
我希望每次应用程序运行时自动删除表并创建一个新表,并自动插入预定义数据.我已经在import.sql中准备数据了.我已经在application.properties中设置了spring.jpa.hibernate.ddl-auto = create-drop.但是,为什么我会收到以下错误?我可以手动插入它.
2015-11-20 20:53:57.242 ERROR 7092 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport : HHH000388: Unsuccessful: INSERT INTO gender
2015-11-20 20:53:57.242 ERROR 7092 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
2015-11-20 20:53:57.242 ERROR 7092 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport : HHH000388: Unsuccessful: (gender_id, gender_name)
2015-11-20 20:53:57.257 ERROR 7092 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'gender_id, gender_name)' at line 1
2015-11-20 20:53:57.257 ERROR 7092 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport : HHH000388: Unsuccessful: VALUES
2015-11-20 20:53:57.257 ERROR 7092 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VALUES' at line 1
2015-11-20 20:53:57.257 ERROR 7092 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport : HHH000388: Unsuccessful: (1, 'Male'),
2015-11-20 20:53:57.257 ERROR 7092 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1, 'Male'),' at line 1
2015-11-20 20:53:57.257 ERROR 7092 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport : HHH000388: Unsuccessful: (2, 'Female')
2015-11-20 20:53:57.257 ERROR 7092 --- [ost-startStop-1] org.hibernate.tool.hbm2ddl.SchemaExport : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2, 'Female')' at line 1
这是我的实体:
@Entity
public class Gender {
@Id
@Column(name = "gender_id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
@Column(name = "gender_name")
private String name;
}
这是我在import.sql中的查询:
INSERT INTO gender
(gender_id, gender_name)
VALUES
(1, 'Male'),
(2, 'Female');
解决方法:
根据错误的模式,您的行结尾似乎包含无法处理的字符(隐藏字符,如LF或类似的东西).
我这样说是因为你所有的错误都与行尾有关.尝试将import.sql放在一行中,如下所示:
INSERT INTO gender (gender_id, gender_name) VALUES (1, 'Male'), (2, 'Female');
注意在关键字之间只留出空格并删除所有不可打印的字符.您可以使用自己喜欢的文本编辑器并使用“显示所有字符”选项.
沃梦达教程
本文标题为:java – 在hibernate中导入import.sql失败
基础教程推荐
猜你喜欢
- Java String类常用方法梳理总结 2023-01-08
- Thread类interrupt interrupted及isInterrupted区别 2023-06-24
- JPA @ManyToMany 报错StackOverflowError的解决 2023-08-07
- selenium4.0版本在springboot中的使用问题的坑 2023-02-28
- SpringCloud Eureka服务治理之服务注册服务发现 2023-03-22
- SpringBoot多数据源配置并通过注解实现动态切换数据源 2023-03-22
- Java内存模型 2023-09-01
- MyBatis中关于SQL的写法总结 2023-04-18
- Java线程间共享与协作详细介绍 2023-05-14
- JVM中最耗cpu的线程查找方法 2023-05-08