Caused by: java.sql.BatchUpdateException: ORA-01438: 值大于为此列指定的允许精度
遇到这个问题时,从以下几点找原因
1.检查列所对应的实体的类型是否写错。
2.由于我用Oracle,主键是自增长,检查自增长的配置。若是用注解写的。看看有木有写错。
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "generator")
@SequenceGenerator(name = "generator",sequenceName="SEQ_USER")
public Integer getId() {
return this.id;
}
以上没有问题。
3.检查数据库自增长的设置。
注意到id是number(4),之前从1000开始,改小一点就好了。