与yashandb版本无关 问题发生原因 beetlsql在此种batch insert情况下,prepareStatement的时候调用的是conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); 没有指定返回哪一列。 yashan jdbc驱动会返回生成的rowid(字符串类型),而java bean和数据库中表对应列(tid)是数字型,从字符串向数字型转换的时候,出...
在BeetISQL 2中的规避方案就是将insertBatch中的autoDbAssignKey参数由true改为false。BeetISQL 3中的关键源码已经修改,为conn.prepareStatement(result.jdbcSql, this.getKeyHolderCols(holder, entity.getClass()));此时可以正常返回sequence.nextval经验总结
与yashandb版本无关 问题发生原因 druid源码中在merge sql时会调用ParameterizedOutputVisitorUtils.parameterize(sql, null, null, null, null);此方法的第二个参数为dbType,此时传入为null,解析时不识别递归查询中的start关键字,因而抛出异常。 解决方法及规避方式 由于此异常对正常的业务流程无影响,忽略此异常或者关...
中的returning rowid,判断出是在将rowid转换为数字的时候出的问题。 在BeetISQL 2中的规避方案就是将insertBatch中的autoDbAssignKey参数由true改为false。 BeetISQL 3中的关键源码已经修改,为conn.prepareStatement(result.jdbcSql, this.getKeyHolderCols(holder, entity.getClass())); 此时可以正常返回sequence.next...
与yashandb版本无关 问题发生原因 druid源码中在merge sql时会调用ParameterizedOutputVisitorUtils.parameterize(sql, null, null, null, null);此方法的第二个参数为dbType,此时传入为null,解析时不识别递归查询中的start关键字,因而抛出异常。 解决方法及规避方式 ...
与yashandb版本无关 问题发生原因 druid源码中在merge sql时会调用ParameterizedOutputVisitorUtils.parameterize(sql, null, null, null, null);此方法的第二个参数为dbType,此时传入为null,解析时不识别递归查询中的start关键字,因而抛出异常。 解决方法及规避方式 ...