JDBC 3.0 增加了自动获得数据库自动字段的功能,比如MySQL的autoincreament , SQL Server 的 Identity 等
// 第一步,加上参数创建Statement
PreparedStatement pstat = con.prepareStatement(
"insert into t_method (Class_Id,Name,Detail,Version_From,define) values (?,?,?,?,?)", Statement.RETURN_GENERATED_KEYS);
// 执行更新操作
pstat.executeUpdate();
// 第二步,获取生成的主键
rs = pstat.getGeneratedKeys();
rs.next();
// 第三步,读取
String key = rs.getString(1); // 也可以rs.getString("ID") 来获得
static final int RETURN_GENERATED_KEYS
该常量指示生成的键应该可用于获取。
ResultSet getGeneratedKeys() throws SQLException
获取由于执行此 Statement 对象而创建的所有自动生成的键。如果此 Statement 对象没有生成任何键,则返回空的 ResultSet 对象。 
注:如果未指定表示自动生成键的列,则 JDBC 驱动程序实现将确定最能表示自动生成键的列。 
返回:
包含通过执行此 Statement 对象自动生成的键的 ResultSet 对象
本文介绍JDBC 3.0新增的自动获取数据库自增字段功能,演示如何使用PreparedStatement设置RETURN_GENERATED_KEYS参数并调用getGeneratedKeys方法来获取自动生成的主键。
1543

被折叠的 条评论
为什么被折叠?



