插入数据得到主键(ID)

基础介绍

  pstmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);

 rs = pstmt.getGeneratedKeys();

  int id = rs.getInt(1);//查询出工单ID

注释 :我们在插入数据时,有时候会用到ID网上有方法说在查一次。。。其实并不需要,有方法的


示例:


        sql = "INSERT INTO XXX (j,a,v,a,j,s) VALUES(null,?,?,?,?,1);";

        pstmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);

        pstmt.setString(1, a);

        pstmt.setString(2, b);

        pstmt.setString(3, c);

        pstmt.setString(4, d);

        pstmt.executeUpdate();

        rs = pstmt.getGeneratedKeys();

        if (rs.next()) {

            int id = rs.getInt(1);//查询出工单ID

      }


补充


sql = "";

            pstmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);

            pstmt.setInt(1, Integer.valueOf(id));

            pstmt.setString(2, add_user);

            System.out.println(pstmt.toString());

            pstmt.executeUpdate();

            ResultSet rsKey = pstmt.getGeneratedKeys(); //ResultSet 指示键值

            rsKey.next();

            int key = rsKey.getInt(1); //得到第一个键值

            rtmap.put("msg", "success");

            rtmap.put("key", key);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容