您的位置:首页 > 其它

JDBC中添加数据成功后,如何返回主键id

2020-01-15 11:54 309 查看

JDBC中添加数据成功后,如何返回主键id

// 添加成功后,获取主键值
@Test
public void test02() throws Exception {
// 加载驱动器类
Class.forName("com.mysql.jdbc.Driver");

// 创建连接对象
// "jdbc:mysql:///test"
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);

// 创建执行SQL的对象
String sql = "insert into tb_user(name, age, birthday) values(?,?,?)";
/**
* 如果在添加成功后,需要获取当前记录的主键值,需要调用:
* PreparedStatement prepareStatement(String sql, int autoGeneratedKeys)
throws SQLException;
方法:
方法的参数说明:
1、需要执行的SQL语句
2、是一个是否返回主键的标识。值有以下两个:
1)Statement.RETURN_GENERATED_KEYS
2)Statement.NO_GENERATED_KEYS
*/
PreparedStatement pst = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);

// 执行SQL
pst.setString(1, "qqqq");
pst.setInt(2, 15);
pst.setDate(3, new java.sql.Date(new Date().getTime()));
int count = pst.executeUpdate();

// 获取主键值
ResultSet rs = pst.getGeneratedKeys();
if (rs.next()) {
System.out.println("主键值为:" + rs.getObject(1));
}

System.out.println(count > 0 ? "添加成功!" : "添加失败");

rs.close();
pst.close();
conn.close();
}
  • 点赞
  • 收藏
  • 分享
  • 文章举报
一梦如意 发布了92 篇原创文章 · 获赞 1 · 访问量 1029 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: