`
hybxiaodao
  • 浏览: 244657 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

获取自动生成的键值

SQL 
阅读更多
Statement.RETURN_GENERATED_KEYS表示获取自动生成的键值
如果一条记录中,要插入一个自动获取的键值,可以这样写:
表的类型是(id,pid,rootid,title,cont,pdate,isleaf)
其中id是自动生成的键值
String sql = "insert into article values(null,0,?,?,?,now(),0)";
PreparedStatement pstmt =conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);
//Statement.RETURN_GENERATED_KEYS表示:pstmt在创建过程中会生成多个key


pstmt.setInt(1,-1);  //暂时将rootid的值设置为-1,后面在更新
pstmt.setString(2,title);
pstmt.setString(3,cont);
pstmt.executeUpdate();

ResultSet rskey = pstmt.getGeneratedKeys();
//通过pstmt.getGeneratedKeys()方法可以返回类型为resultSet的结果集,将keys保存到结果集中
rskey.next();
int key = rskey.getInt(1);

String sqlroot = "update article set rootid="+key +" where id="+key;
stmt.executeUpdate(sqlroot);
//执行更新操作,就能够把rootid的值改成自动生成的值id

分享到:
评论

相关推荐

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

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

    风越ASP代码生成器 [FireAsp Creator]

    ★  5、支持对用户输入内容进行服务器端与客户端JS双重验证 ★  6、支持自动生成多组多级的级联下拉框功能,快速建立如:省、市、县的多级选项 ★  7、支持表单提交超过100KB的文本数据,支持文件上载...

    Uber优步汽车自动驾驶类专利技术资料180个合集(英文).zip

    172用于地理搜索和检索兴趣点记录的键值数据库.pdf 173使用由计算设备提供的位置数据点确定位置信息.pdf 174具有图形用户界面的计算设备显示屏.pdf 175具有计算机生成的电子面板的显示屏,用于为计算设备提供评级...

    Mybatis项目中应用和常见问题

    如何获取自动生成的(主)键值? Mybatis 是如何将sql 执行结果封装为目标对象并返回的?都有哪些映射形式? Mybatis 是如何进行分页的?分页插件的原理是什么? Mybatis 的一级、二级缓存: 什么是 MyBatis 的接口绑定...

    数据库主键设计原则.txt

    目前一个比较好的主键是采用GUID,当然我是推荐主键还是字符型的,但值由GUID生成,GUID是可以自动生成,也可以程序生成 ,而且键值不可能重复,可以解决系统集成问题,几个系统的GUID值导到一起时,也不会发生重复...

    swagger-qa:自动化测试swagger api

    示例请求,应在提供 Web 服务的 swagger 规范时自动生成。 请求配置:可以将csv、json、xml、ini作为每个请求的替代数据。 响应解析器:用户可以定义如何解析响应以进行断言,发送到下一个请求。 断言:简单断言...

    1000道 互联网Java架构师面试题.pdf和JAVA核心知识整理.zip

    13、如何获取自动生成的(主)键值? 14、在 mapper 中如何传递多个参数? 15、Mybatis 动态 sql 有什么用?执行原理?有哪些动态 sql? 16、Xml 映射文件中,除了常见的 select|insert|updae|delete 标签之外,还有...

    Zabbix实现监控多个mysql过程解析

    自动发现规则上的{$MYSQLPORT}是要传递给agent自动发现脚本的参数,这个值是从主机定义的宏{$MYSQLPORT}获取过来的,自动发现的脚本将其解析成{#MYSQLPORT}:端口的形式,监控项原型再根据{#MYSQLPORT}的值来生成监控...

    sqlserver数据库主键的生成方式小结(sqlserver,mysql)

    数据库自动生成 二. GUID 三. 开发创建 严格讲这三种产生方式有一定的交叉点,其定位方式将在下面进行讲解。 第一种方式,主要将其定位在自增长的标识种子:可以设置起始数值,及增长步长。其优点在于使用时完全将...

    Vb6四十多条新手制作或业余爱好者必看的

    3、vb6text自动换行.txt 4、vb6保存(读取)数据到注册表里.txt 5、vb6背景色透明.txt 6、vb6打开任意类型的文件.txt 7、vb6打开网页.txt 8、vb6单击按钮复制文本框内的内容.txt 9、vb6单击按钮最小化窗体.txt 10、...

    30个初级常用python实现脚本 中文pdf高清版

    10、把原字典的键值对颠倒并生产新的字典 11、打印九九乘法表 12、替换列表中所有的3为3a 13、打印每个名字 14、合并去重 15、随机生成验证码的两种方式 16、计算平方根 17、判断字符串是否只由数字组成 18、判断...

    lib-i18n:库Lib-I18N允许开发人员将.properties文件的键值对绑定到[StringBinding]。 这使得在[JavaFX]应用程序中的运行时更改语言非常容易

    库Lib-I18N允许开发人员将.properties文件的键值对绑定到 。 这使得在应用程序的运行时更改语言非常容易。 Lib-I18N用JavaFX, 和编写。 图片: Lib-I18N的演示集成 该演示通过四个步骤显示了如何轻松地将应用程序...

    delphi 开发经验技巧宝典源码

    0008 生成一个DLL文件 8 0009 调用DLL文件 8 1.4 窗体相关操作 9 0010 将组件置前/置后 9 0011 如何锁定窗体中的组件 9 0012 如何改变窗体上的网格大小 10 0013 组件的选取 10 0014 改变窗体Hint背景...

    delphi 开发经验技巧宝典源码06

    0008 生成一个DLL文件 8 0009 调用DLL文件 8 1.4 窗体相关操作 9 0010 将组件置前/置后 9 0011 如何锁定窗体中的组件 9 0012 如何改变窗体上的网格大小 10 0013 组件的选取 10 0014 改变窗体Hint背景...

    jdbc基础和参考

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

    Hibernate注解

    * GenerationType.IDENTITY 主键由数据库自动生成(主要是自动增长类型) * GenerationType.SEQUENCE 根据底层数据库的序列来生成主键,条件是数据库支持序列。(这个值要与generator一起使用) * generator 指定...

    K8s_YAML_configuration_File:有关在部署,服务和机密组件上使用Kubernetes配置文件创建和部署应用程序的说明

    选择器和模板状态-当比较文件定义的所需状态和组件的实际状态(来自etcd)时,由K8s自动生成和添加,以实现自我修复和更新Yaml文件应与代码一起存在。这是IaC解释的一部分。将部署连接到Pod在元数据中,标签为部署或...

Global site tag (gtag.js) - Google Analytics