gpt4 book ai didi

Java JDBC 返回错误的生成键

转载 作者:行者123 更新时间:2023-11-29 10:19:22 25 4
gpt4 key购买 nike

我正在尝试从数据库中获取新插入行的 ID。经过调试并逐步执行代码后,但始终返回“0”值。

HashMap<String, String> response = new HashMap<String, String>();
Integer generatedId = 0;
try {
ps = con.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
ps.executeUpdate();
rs = ps.getGeneratedKeys();
rs.next();
if (rs.isBeforeFirst()) {
generatedId = rs.getInt(1);
}
} catch (SQLException e) {
System.out.println(e.getMessage());
response.put("STATUS", "ERROR");
}

该代码位于一个名为 update 的静态方法中,该方法接受带有 SQL 查询字符串的字符串。

public static HashMap<String, String> update(String query)

最佳答案

你的代码没有任何意义。

如果您调用 rs.next()(如您所愿),rs.isBeforeFirst() 不可能为 true,并且以下 rs.getInt( ) 如果是的话就会失败。

删除测试。它实际上应该是 if (rs.next()) 等。

关于Java JDBC 返回错误的生成键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49592845/

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