hibernate 配置问题

云上行者Gorge 2021-02-04 02:31:03
我在阿里云上安装了mysql 版本号是 5.7.30=0ubuntu0.18.04.1
然后在hibernate.hbm.xml 的配置文件中配置的 <property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
常见的MySQL5InnoDBDialect,MySQL5Dialect,MySQL57Dialect,MySQL57InnoDBDialect 都尝试过了,但是依然存在下面的警告,程序能正常运行,也能正常插入结果。



WARN: GenerationTarget encountered exception accepting command : Error executing DDL "alter table product_ add constraint FK5g0v39gl73bdiw9waaha0pkfg foreign key (category) references category_ (id)" via JDBC Statement
org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "alter table product_ add constraint FK5g0v39gl73bdiw9waaha0pkfg foreign key (category) references category_ (id)" via JDBC Statement
...全文
139 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
云上行者Gorge 2021-02-05
  • 打赏
  • 举报
回复
category是一个单独的表,表里是分类的id 以及类型名称,product 的category 列对应的是分类的id ,感觉没问题
qq_39936465 2021-02-05
  • 打赏
  • 举报
回复
引用 4 楼 云上行者Gorge 的回复:
SQL语句是自动生成的
总觉得怪怪的,为什么Category列用Category的id来约束,类型不匹配吧。 alter table 表名 add constraint 约束名称 约束类型 (列名) references 被引用的表名称(列名)
云上行者Gorge 2021-02-04
  • 打赏
  • 举报
回复
SQL语句是自动生成的
SessionFactory sf = new Configuration().configure().buildSessionFactory();
Session s = sf.openSession();
s.beginTransaction();
Category c = new Category();
//c.setId(1);
c.setName("c6");
s.save(c);
Product p = (Product)s.get(Product.class,4);
p.setCategory(c);
s.update(p);

s.getTransaction().commit();
s.close();
sf.close();
qq_39936465 2021-02-04
  • 打赏
  • 举报
回复
引用 2 楼 云上行者Gorge 的回复:
引用 1 楼 qq_39936465 的回复:
配置中添加这个了,没有作用
感觉hibernate配置应该没问题,是你的sql语句有问题吧! 把sql贴一下看看。
云上行者Gorge 2021-02-04
  • 打赏
  • 举报
回复
引用 1 楼 qq_39936465 的回复:
[quote=引用 楼主 云上行者Gorge 的回复:]我在阿里云上安装了mysql 版本号是 5.7.30=0ubuntu0.18.04.1 然后在hibernate.hbm.xml 的配置文件中配置的 <property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property> 常见的MySQL5InnoDBDialect,MySQL5Dialect,MySQL57Dialect,MySQL57InnoDBDialect 都尝试过了,但是依然存在下面的警告,程序能正常运行,也能正常插入结果。 WARN: GenerationTarget encountered exception accepting command : Error executing DDL "alter table product_ add constraint FK5g0v39gl73bdiw9waaha0pkfg foreign key (category) references category_ (id)" via JDBC Statement org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "alter table product_ add constraint FK5g0v39gl73bdiw9waaha0pkfg foreign key (category) references category_ (id)" via JDBC Statement
配置中添加一下试试 <property name="hbm2ddl.auto">update</property>[/quote]配置中添加这个了,没有作用
qq_39936465 2021-02-04
  • 打赏
  • 举报
回复
引用 楼主 云上行者Gorge 的回复:
我在阿里云上安装了mysql 版本号是 5.7.30=0ubuntu0.18.04.1 然后在hibernate.hbm.xml 的配置文件中配置的 <property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property> 常见的MySQL5InnoDBDialect,MySQL5Dialect,MySQL57Dialect,MySQL57InnoDBDialect 都尝试过了,但是依然存在下面的警告,程序能正常运行,也能正常插入结果。 WARN: GenerationTarget encountered exception accepting command : Error executing DDL "alter table product_ add constraint FK5g0v39gl73bdiw9waaha0pkfg foreign key (category) references category_ (id)" via JDBC Statement org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "alter table product_ add constraint FK5g0v39gl73bdiw9waaha0pkfg foreign key (category) references category_ (id)" via JDBC Statement
配置中添加一下试试 <property name="hbm2ddl.auto">update</property>

51,411

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧