当前位置: 首页 > news >正文

[java/jdbc]插入数据时获取自增长主键的值

需求

数据库中的unum字段为自增长主键,使用sql语句插入时需要获取主键的值

insert into udata(upwd,utime,upath) values(?,?,?)

插入之后再查找显然效率太慢,其实jdbc提供了getGeneratedKeys()方法来获取主键

代码

PreparedStatement ps = conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);
ps.setObject(1,XXX);
.....
int rs=ps.executeUpdate();ResultSet generatedKeys = ps.getGeneratedKeys();
if (generatedKeys.next()) {unum=generatedKeys.getInt(1); //得到主键
}

说明

如果报异常

Generated keys not requested. You need to specify Statement.RETURN_GENERATED_KEYS to Statement.execu

mysql-connector包在5.1.17之后需要在prepareStatement里加上额外参数(Statement.RETURN_GENERATED_KEYSStatement.NO_GENERATED_KEYS)

ps = conn.prepareStatement(sql,PreparedStatement.RETURN_GENERATED_KEYS);

相关文章:

  • keepalived+lvs 对nginx做负载均衡和高可用
  • HTML---列表.表格.媒体元素
  • 低多边形建筑3D模型纹理贴图
  • 淡化了技术指标 还能做现货黄金交易?
  • Maven的settings.xml笔记231208
  • 【嵌入式开发 Linux 常用命令系列 4.2 -- .repo 各个目录介绍】
  • 使用cmake构建Qt6.6的qt quick项目,添加应用程序图标的方法
  • 软件兼容性测试:保障多样化用户体验的重要功能
  • 数据分析基础之《matplotlib(5)—直方图》
  • 分布式环境认证和授权-基于springboot+JWT+拦截器实现-实操+源码下载
  • 什么是 AWS IAM?如何使用 IAM 数据库身份验证连接到 Amazon RDS(上)
  • 【python中类的介绍】
  • jquery实现省市区三级联动
  • 线性回归与逻辑回归:深入解析机器学习的基石模型
  • 计算机网络:应用层(一)
  • 【css3】浏览器内核及其兼容性
  • Android优雅地处理按钮重复点击
  • CentOS 7 防火墙操作
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • If…else
  • java8-模拟hadoop
  • JavaScript HTML DOM
  • JS题目及答案整理
  • k8s 面向应用开发者的基础命令
  • Laravel 中的一个后期静态绑定
  • mysql_config not found
  • SOFAMosn配置模型
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • weex踩坑之旅第一弹 ~ 搭建具有入口文件的weex脚手架
  • 给第三方使用接口的 URL 签名实现
  • 猴子数据域名防封接口降低小说被封的风险
  • 【云吞铺子】性能抖动剖析(二)
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案
  • #if和#ifdef区别
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (全部习题答案)研究生英语读写教程基础级教师用书PDF|| 研究生英语读写教程提高级教师用书PDF
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (原創) 如何刪除Windows Live Writer留在本機的文章? (Web) (Windows Live Writer)
  • 、写入Shellcode到注册表上线
  • .NET Core SkiaSharp 替代 System.Drawing.Common 的一些用法
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .NET框架设计—常被忽视的C#设计技巧
  • .NET面试题(二)
  • .NET文档生成工具ADB使用图文教程
  • :如何用SQL脚本保存存储过程返回的结果集
  • @EventListener注解使用说明
  • [ vulhub漏洞复现篇 ] Hadoop-yarn-RPC 未授权访问漏洞复现
  • [ 隧道技术 ] 反弹shell的集中常见方式(二)bash反弹shell
  • [2024] 十大免费电脑数据恢复软件——轻松恢复电脑上已删除文件
  • [8-27]正则表达式、扩展表达式以及相关实战
  • [ACTF2020 新生赛]Include
  • [AIGC] 开源流程引擎哪个好,如何选型?
  • [Android 13]Input系列--获取触摸窗口