[英]com.microsoft.sqlserver.jdbc.SQLServerException: Invalid column name 'xxx'
Entity class 1 实体类别1
@Entity
@Table(name = "TICKETS")
public class Ticket {
....
@Column(name = "MERCHANT_NBR")
private String merchant_nbr;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "merchant_nbr", nullable = false)
private Merchant merchant;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name ="merchantNBR", nullable = false)
private merchantDetails merchantDetails;
Entity class 2 实体类别2
@Entity
@Table(name="MERCHANT_DETAILS")
public class merchantDetails {
@Id
@Column(name="MERCHANT_NBR")
private String merchantNBR;
@OneToMany(fetch = FetchType.LAZY)
private Set<Ticket> ticket;
error its giving...invalid column 'merchantNBR'.But I have a column by that name. 错误给出...无效的列'merchantNBR'。但是我有一个相同名称的列。
com.microsoft.sqlserver.jdbc.SQLServerException: Invalid column name 'merchantNBR'.
so it's a join column not a column and for that you have to use the proper annotation for joining two entities which is @JoinColumn
see this it may be helpful 所以这是一个连接列而不是一个列,为此您必须使用正确的注释来连接两个实体,即
@JoinColumn
这可能会有所帮助
@joinColumn(name = "MERCHANT_NBR" ,referencedColumnName="merchantNBR")
private String merchant_nbr;
here i supposed that you've changed the column name in entitie class 2 from 在这里,我认为您已经更改了entitie class 2中的列名
@Column(name="MERCHANT_NBR") to `@Column(name="merchantNBR")`
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.