GBase 8a
其他
问答
8a 数据库无法使用无法通过getGeneratedKeys获取key
发表于2026-08-03 09:44:02182次浏览5个评论
【GBase版本】:Gbase8a-9.5.3.28
【操作系统】:
【CPU】:
【问题描述】*:这里的keyholder获取不到自增主键的值,使用jdbc insert 自增主键的表,无法通过getGeneratedKeys获取到插入自增主键的值,但是数据库里是有自增主键的值的。我看之前有一个帖子提到过这个问题,等待新版本驱动包解决这个问题,请问哪个版本解决了这个问题呢?我现在的驱动版本是9.5.0.5
@Override
public long addConfigInfoAtomic(final long configId, final String srcIp, final String srcUser,
final ConfigInfo configInfo, Map configAdvanceInfo) {
KeyHolder keyHolder = ExternalStorageUtils.createKeyHolder();
ConfigInfoMapper configInfoMapper =
mapperManager.findMapper(dataSourceService.getDataSourceType(),
TableConstant.CONFIG_INFO);
try {
jt.update(
connection -> createPsForInsertConfigInfo(srcIp, srcUser, configInfo,
configAdvanceInfo, connection,
configInfoMapper),
keyHolder);
Number nu = keyHolder.getKey();
if (nu == null) {
throw new IllegalArgumentException("insert config_info fail");
}
return nu.longValue();
} catch (CannotGetJdbcConnectionException e) {
LogUtil.FATAL_LOG.error("[db-error] " + e, e);
throw e;
}
}
悬赏:10吉币
回答被发帖人采纳后可获得赏金
热门帖子
- 12025-12-01浏览数:183737
- 22023-05-09浏览数:26443
- 42023-09-25浏览数:20111
- 52020-05-11浏览数:18840