gpt4 book ai didi

java - PSQLException 仅 8.2 及更高版本的服务器支持返回自动生成的键

转载 作者:行者123 更新时间:2023-12-02 09:19:26 28 4
gpt4 key购买 nike

我正在尝试在表上进行插入并获取自动生成的主键

    PreparedStatement pstm = dbcon.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);

pstm.setDate(1, sqlDate);
pstm.setInt(2, knr);
pstm.executeUpdate();
ResultSet rs = pstm.getGeneratedKeys();

在第一行,我抛出以下错误:

org.postgresql.util.PSQLException: Returning autogenerated keys is only supported for 8.2 and later servers.

我有以下 Maven 依赖项:

    <dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.1-901-1.jdbc4</version>
</dependency>

当我在数据库上使用SELECT VERSION();时,我得到

PostgreSQL 11.4 (Debian 11.4-1.pgdg90+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516, 64-bit

所以我不太明白为什么我无法获得自动生成的 key ?
我是否在这里遗漏了一些东西,因为据我所知,我的版本高于 8.2?!

提前致谢

最佳答案

不幸的是,PostgreSQL JDBC 驱动程序的版本控制非常具有欺骗性。

这个驱动

    <dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.1-901-1.jdbc4</version>
</dependency>

于2011年发布,groupId也发生了变化。以下是受支持的 JDBC 驱动程序的列表。

https://mvnrepository.com/artifact/org.postgresql/postgresql

关于java - PSQLException 仅 8.2 及更高版本的服务器支持返回自动生成的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58791597/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com