2

我现在正在尝试调用一个返回标量值的存储过程,该值表示插入行的 ID(即 varchar),这如何在 JDBC 中实现?我现在正在做的是让 DB sproc 像这样返回结果

select SCOPE_IDENTITY()

在我的代码中我使用 ResultSet

ResultSet resultSet = statement.executeQuery();
resultSet.next();
String productId = resultSet.getString(1);

我做得对吗?

4

1 回答 1

3

最好使用 JDBC 检索生成的 ID

    PreparedStatement ps = conn.prepareStatement(insertStatement, Statement.RETURN_GENERATED_KEYS);
    ps.executeUpdate();
    ResultSet rs = ps.getGeneratedKeys();
    rs.next();
    String id = rs.getString(1);
于 2013-03-19T04:36:39.333 回答