我有一个包含库存的表。它是旧版数据库,库存保存在列中。数据库对列有约束,表明它们不能为负值。但是我只有在事务提交后才遇到约束违规。

15:21:31,154  WARN JDBCExceptionReporter:77 - SQL Error: 2290, SQLState: 23000
15:21:31,154 ERROR JDBCExceptionReporter:78 - ORA-02290: check constraint (ERPDSS13.STKMAST_CON_QTY13) violated
ORA-06512: at "ERPDSS13.INLTRAN_UPD_STKMAST", line 25
ORA-04088: error during execution of trigger 'ERPDSS13.INLTRAN_UPD_STKMAST'


有没有一种注释方法,您可以指定一列不能为负数。下面是列映射?

@Column(name = "STKSOHQTY01", precision = 12)
public BigDecimal getStksohqty01() {
    return this.stksohqty01;
}

最佳答案

@Check(constraints = "STKSOHQTY01 >= 0")
public class Coupon implements  Serializable {

}


它应该工作

关于java - 如何使用 hibernate 注释验证负值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11187610/

10-13 02:30