org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update
自动生成的sql
insert
into
"userdemo"
("name", "id")
values
(?, ?)
hibernate最简单的save()打死不知道怎么解决,只感觉自动生成的sql语句有问题,直接运行sql语句的话报错,表名不能有“”。
有大神没,小白一枚求救
把表名称的“”去掉 完事
insert into userdemo('name', 'id') values(?, ?)
把代码贴出来,这样没法看
二楼说的对!在你的表名“”如果没有的话,你就去掉,再就是数据添加别忘了字符串类型的参数是‘ ’
sql语句是自动生成的,我怎么改。。。。
table直接名字就行了 不需要给他加个单引号 table=“userdemo”这样就行了
hibernate基本忘光了,但是看问题应该出来你的 hibernate配置上 你在配置的地方有个table=“‘userdemo‘”,你是把表名加了引号了吧?必须加吗? 我觉得应该去掉的吧?
变成 table=“userdemo” 这样!!
你的报错的意思是执行SQL的时候没有找到对应的表,那时就说明执行的时候表名错了,你看你配置的文件,这个是MYSQL数据的为了转义关键字准备的
配置文件那里删掉了试试
所以HQL里你把
解决了 是sql语句的问题 多了引号,hibernate映射文件配置的时候去掉引号就OK