问题暴露
原有项目的数据库默认使用mysql,会有一些id为自增的表。
遇到一个新项目,数据库是sql server,在更换数据库时,发现一些插入操作报错
问题原因
sql server中表id设置为自增后,不能通过insert语句插入值为null的id
解决办法
在entity中用@Column把id字段从insert操作中过滤掉: @Column(insertable = false, name = “id”)
public class UserEntity {
@Id
@GeneratedValue(generator = "JDBC")
@Column(insertable = false, name = "id")
private Integer id;
....
}