问题:
需要主表和子表master.DocNum=Detail.DocNum,但是主表getDocNum()时一直不能get到值,字段一直是null。
解决方案:
注解需要加@KeySql(useGeneratedKeys = true), @Column(name = “DocNum”,insertable = false)和 @Id三个注解。子表不能加注解@Id,跟mysql不一样的地方,主键不能加 @GeneratedValue(strategy = GenerationType.IDENTITY, generator = “JDBC”),加JDBC注解会造成insert语句插入时报错:
SQL: INSERT INTO Inventory_Goods_Receipt_Master ( DocNum,DocDate,docdueDate,POS_NO,Analysis_code,Status,Reason_Code,Bukrs ) VALUES( ?,?,?,?,?,?,?,? )
Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 当 IDENTITY_INSERT 设置为 OFF 时,不能为表 ‘Inventory_Goods_Receipt_Master’ 中的标识列插入显式值。
; 当 IDENTITY_INSERT 设置为 OFF 时,不能为表 ‘Inventory_Goods_Receipt_Master’ 中的标识列插入显式值。