`

JDBC自动获取数据库自动生成的主键

阅读更多

PreparedStatement.getGeneratedKeys() //得到执行添加操作后自动生成的主键值

       PreparedStatement ps = connection.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);

       ps.executeUpdate();

ResultSet rs = st.getGeneratedKeys();//得到执行添加操作后自动生成的主键值

rs.getInt(1);

 

public class OtherApi {

    public static void main(String[] args) throws SQLException,

           InterruptedException {

       int id = create();

       System.out.println("id:" + id);

    }

    static int create() throws SQLException {

       Connection conn = null;

       PreparedStatement ps = null;

        ResultSet rs = null;

       try {

           // 2.建立连接

           conn = JdbcUtils.getConnection();

           // conn = JdbcUtilsSing.getInstance().getConnection();

           // 3.创建语句

           String sql = "insert into user(name,birthday, money) values ('name2 gk', '1987-01-01', 400) ";

           ps = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);  //这样设置可以返加添加的这条记录的主键值

           ps.executeUpdate();

           rs = ps.getGeneratedKeys();//到到添加后的主键值类型是ResultSet

           int id = 0;

           if (rs.next()){

              id = rs.getInt(1);

           }

           return id;

       } finally {

           JdbcUtils.free(rs, ps, conn);

       }

    }

}

 

分享到:
评论

相关推荐

    jdbc 插入记录并返回自增主键值

    java 利用 jdbc 向 mysql 数据库插入记录并返回插入记录生成的主键值

    基于Java的简单数据库设计生成工具(生成Excel文档)

    本工具用于将数据库表结构、主键信息和索引信息导出生成Excel文件。 主要采用jdbc连接数据库(Oracle),采用Poi生成Excel文档(2007)

    Java学习指南(8) MySQL数据库与JDBC框架

    * 数据库的动态访问:获取数据库和表的结构,根据表的结构自动生成POJO 三、课程体系 〖Java学习指南系列〗:包含入门与进阶语法,Swing桌面开发,安卓开发,JavaFX开发,网络通信Socket,数据结构与算法等课程。 ...

    swing开发的数据库工具(DBAnywhere4.77),是开发mis系统的好帮手

    swing开发的数据库管理工具,支持常用的几大主流数据库,其他数据库可以自己扩展添加(只要有此数据库jdbc驱动的jar包就行),可以查看用户表(数据可导出成Excel),主键,索引,视图,触发器,存储过程等,可以生成对表增,删...

    异构数据库数据与结构同步工具

    基于JDBC的分批次读取源端数据库数据,并基于insert/copy方式将数据分批次写入目的数据库。支持有主键表的 增量变更同步 (变化数据计算Change Data Calculate)功能(千万级以上数据量的性能尚需在生产环境验证)

    异构数据库数据与结构同步工具 dbswitch工具提供源端数据库向目的端数据库的批量迁移同步功能,支持数据的全量和增量方式同步

    数据同步:基于JDBC的分批次读取源端数据库数据,并基于insert/copy方式将数据分批次写入目的数据库。支持有主键表的 增量变更同步 (变化数据计算Change Data Calculate)功能(千万级以上数据量的性能尚需在生产...

    Java数据库编程宝典3

    第1部分 介绍数据库、SQL和JDBC 第1章 关系型数据库 1.1 理解关系型数据库管理系统 1.1.1 关系模型 1.1.2 Codd法则 1.1.3 表、行、列和关键字 1.1.4 主键 1.1.5 外键 1.1.6 关系 1.1.7 视图 1.1.6 范式...

    jdbc基础和参考

    hibernate不在自动生成主键值,需要你在插入时自己指明 3.hilo:高低值算法,由数据库表提供高值,程序提供低值 value = hi*(max_lo+1)+lo 4.sequences Cat: cid name color weight age ------------------------...

    dbswitch工具提供源端数据库向目的端数据库的批量迁移同步功能,支持数据的全量和增量方式同步

    数据同步:基于JDBC的分批次读取源端数据库数据,并基于insert/copy方式将数据分批次写入目的数据库。支持有主键表的 增量变更同步 (变化数据计算Change Data Calculate)功能(千万级以上数据量的性能尚需在生产...

    好用的代码生成源码

    //自动搜索数据库中的所有表并生成文件,template为模板的根目录 g.generateByAllTable("template"); // g.generateByClass(Blog.class,"template_clazz"); //删除生成的文件 // g.deleteByTable("table_...

    基于SpringJDBC的轻量级ORM框架sborm.zip

    9、对于复杂的sql查询,提供获取jdbctemplate实例进行操作,类似spring jdbc的常规用法; 10、提供Entity代码生成接口,Entity并非简单的pojo(尽可能不要去修改此类),引入字段常量类,方便查询的时候指定选择...

    Java数据库编程宝典2

    第1部分 介绍数据库、SQL和JDBC 第1章 关系型数据库 1.1 理解关系型数据库管理系统 1.1.1 关系模型 1.1.2 Codd法则 1.1.3 表、行、列和关键字 1.1.4 主键 1.1.5 外键 1.1.6 关系 1.1.7 视图 1.1.6 范式...

    Java数据库编程宝典1

    第1部分 介绍数据库、SQL和JDBC 第1章 关系型数据库 1.1 理解关系型数据库管理系统 1.1.1 关系模型 1.1.2 Codd法则 1.1.3 表、行、列和关键字 1.1.4 主键 1.1.5 外键 1.1.6 关系 1.1.7 视图 1.1.6 范式...

    swing开发的数据库工具(DBAnywhere4.76),是开发mis系统的好帮手

    swing开发的数据库管理工具,支持常用的几大主流数据库,其他数据库可以自己扩展添加(只要有此数据库jdbc驱动的jar包就行),可以查看用户表(数据可导出成Excel),主键,索引,视图,触发器,存储过程等,可以生成对表增,删...

    Java数据库编程宝典4

    第1部分 介绍数据库、SQL和JDBC 第1章 关系型数据库 1.1 理解关系型数据库管理系统 1.1.1 关系模型 1.1.2 Codd法则 1.1.3 表、行、列和关键字 1.1.4 主键 1.1.5 外键 1.1.6 关系 1.1.7 视图 1.1.6 范式...

    ormappingtool:将数据库表转换为 DAO 的 ORM 工具

    ORM工具这是一个 ORM java 代码生成器。 将数据库表转为Entity Class 、 DAO 、 DAOTest ,支持MySQL 、 SQL Server ,使用jdbc连接数据库,自动生成java代码。 此版本暂时只支持默认的自增主键

    Firebird数据库中文版

    生成子:生成子也称为序列,它可以很容易的实现自动增加的字段。它是一个INT64的长度,因此,它可以用在一个事务中,也可以用在其它很多方面。 只读数据库: 我们可以把数据库存放在CD中,形成一个只读数据库。如果...

    DBAnywhere发布4.79版本了

    主键,索引,视图,触发器,存储过程等,可以生成对表增,删,改,查的sql语句,还可以生成对表操作的代码,支持批量表的数据导入和导出(支持blob/clob),支持excel,txt文件导入导出数据库,不同数据库的表之间进行数据交换...

    dbswitch-master.zip

    基于JDBC的分批次读取源端数据库数据,并基于insert/copy方式将数据分批次写入目的数据库。支持有主键表的 增量变更同步 (变化数据计算Change Data Calculate)功能(千万级以上数据量的性能尚需在生产环境验证)

    支持多数据库的ORM框架ef-orm.zip

    例如:数据库查询条件的传入问题是所有ORM框架都不能回避的一个问题,所以我经常在想——既然我们可以用向DAO传入一个Entity来实现插入操作,为什么就不能用同样的方法来描述一个不以主键为条件的update/select/...

Global site tag (gtag.js) - Google Analytics