在JAVA中查询刚插入的记录ID
来源:互联网 发布:java语言入门 pdf 编辑:程序博客网 时间:2024/05/16 11:38
- public Object insertGetId(String sql, Object... params) throws Exception {
- Connection conn = null;
- PreparedStatement preparedStatement = null;
- ResultSet rs = null;
- try {
- conn= getConnection();
- preparedStatement = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
- setParams(preparedStatement, params);
- preparedStatement.executeUpdate();
- rs = preparedStatement.getGeneratedKeys();
- Object retId = null;
- if (rs.next())
- retId = rs.getObject(1);
- else
- throw new Exception("insert or generate keys failed..");
- return retId;
- } catch (Exception e) {
- throw e;
- } finally {
- close(rs);
- close(preparedStatement);
- close(conn);
- }
- }
只需要new对象 并调用方法即可
- try {
- String newId = bd.insertGetId(newInsertSql, null).toString();
- System.out.print("--------------"+newId);
- } catch (Exception e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
参考的文章:
有时候,在用insert插入数据后,想获得刚插入记录的ID,可以利用JDBC的getGeneratedKeys获得INSERT插入后生成的主键ID。本例数据库为mysql,主键ID为int类型,用auto_increment生成。
以下为主要的java代码:
- ps = conn.prepareStatement("insert into test(name) value(?)",Statement.RETURN_GENERATED_KEYS);
- ps.setString(1, "test");
- ps.execute();
- rs = ps.getGeneratedKeys();
- int id=0;//保存生成的ID
- if (rs != null&&rs.next()) {
- id=rs.getInt(1)
- }
本例用到的主要方法为以下两个,可以查阅JDK参考文档:
1、PreparedStatement prepareStatement( String sql, int autoGeneratedKeys) throws SQLException(在java.sql.Connection接口中)
2、ResultSet getGeneratedKeys() throws SQLException(在java.sql.PreparedStatement 接口中)
0 0
- 在JAVA中查询刚插入的记录ID
- 在JAVA中查询刚插入的记录ID 利用JDBC的getGeneratedKeys获得INSERT插入后生成的主键ID
- 在JAVA中查询刚插入的记录ID 利用JDBC的getGeneratedKeys获得INSERT插入后生成的主键ID
- 在SQL Server中如何获得刚插入一条新记录的自动ID号
- 在SQL Server中如何获得刚插入一条新记录的自动ID号
- 【转帖】在SQL Server中如何获得刚插入一条新记录的自动ID号
- SQL中返回刚插入记录的ID
- SQL中返回刚插入记录的ID
- SQL中返回刚插入记录的ID
- SQL中返回刚插入记录的ID
- SQL中返回刚插入记录的ID
- SqlServer中实现返回刚插入记录的ID
- 【转载】MSSQL中返回刚插入记录的ID
- 怎样在插入一条记录的同时,立即返回刚插入如记录的ID值
- JSP中如何获取刚插入记录的ID,此Id是自增的
- 将刚插入的记录的自增Id,插入到另一个字段中
- mysql获得刚插入的那条记录的id
- MYSQL如何获得刚插入记录的ID值。
- 分类模型的性能评估——以SAS Logistic回归为例(2): ROC和AUC
- Redis详解与常见问题解决方案
- VS2013 win7安装提示核心功能严重错误
- IIS7.5上传大文件
- trail particle制作血管
- 在JAVA中查询刚插入的记录ID
- PCI OP WiFi 测试(二):PCI对OP的要求
- SAP-ABAP 通过公司代码和日期,去对应的会计期间和年度函数:G_PERIOD_GET
- android studio 常用快捷键整理
- 修改UITextField的placeholder颜色
- 广东工业大学2016校赛----积木积水【模拟】
- 深度学习理论
- C# TCP实现多个客户端与服务端 数据 与 文件的传输
- Pixhawk之姿态解算篇(2)_mahony算法分析