我的复合主键和具有相同列名的外键有问题。
示例
表A. PK(ID,NEW_ID)
表B. PK(ID,NEW_ID) FK(A_ID,NEW_ID)
我以这种方式将实体B的关系映射到A
@ManyToOne
@JoinColumns({@JoinColumn(name = "A_ID", referencedColumnName = "ID"),
@JoinColumn(name = "NEW_ID", referencedColumnName = "NEW_ID")})
当我尝试保存B.我收到无效索引错误。
所以我猜它也试图设置两次NEW_ID并收到此错误。
我没有选择将一列设置为可插入且可更新为false。
任何人都可以帮助我
答案 0 :(得分:0)
我可以分享的一个提示是制作hibernate.hbm2ddl.auto=create
并查看hibernate正在做什么,这将有助于您调试,而且制作show_sql=true
,您一定会明白这个配置会产生什么。
有关注释使用的详细信息,请参阅http://docs.jboss.org/hibernate/annotations/3.5/reference/en/html/entity.html
由于 ABHI