首页 > 其他分享 >JDBC的PreparedStatement获取自增id

JDBC的PreparedStatement获取自增id

时间:2023-01-13 22:34:00浏览次数:58  
标签:account JDBC 自增 properties new id pst


@Override
public void insert(Account account) throws ClassNotFoundException, SQLException {
account = new Account(100, 1001, new BigDecimal("1000"), new BigDecimal("10"),new BigDecimal("990"));
Class.forName(properties.getDriverClassName());
Connection connection = DriverManager
.getConnection(properties.getUrl(), properties.getUsername(),
properties.getPassword());
String sql = "insert into account(user_id,total,used,residue) values(?,?,?,?)";
PreparedStatement pst = connection
.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);//设置自增id
pst.setLong(1,account.getUserId());
pst.setBigDecimal(2,account.getTotal());
pst.setBigDecimal(3,account.getUsed());
pst.setBigDecimal(4,account.getResidue());
pst.execute();
//获取自增id
long id = 0;
ResultSet resultSet = pst.getGeneratedKeys();
if(resultSet.next()){
id = resultSet.getLong(1);
}
LOGGER.info("新增的id为{}",id);
}


标签:account,JDBC,自增,properties,new,id,pst
From: https://blog.51cto.com/u_15936016/6006758

相关文章

  • myeclipse Invalid Subscription level error
    问题myeclipse部署web项目的时候卡在部署中.报错:Aninternalerroroccurredduring:"AddDeployment".InvalidSubscriptionlevel解决:查看myeclipse是否激活. react......
  • System.InvalidCastException: 对象不能从 DBNull 转换为其他类型。
    System.InvalidCastException:对象不能从DBNull转换为其他类型。  在System.DBNull.System.IConvertible.ToDouble(IFormatProviderprovide......
  • Android sqlite 使用简介
    进行Android应用开发时经常会用到数据库。Android系统支持sqlite数据库,在app开发过程中很容易通过SQLiteOpenHelper使用数据库,SQLiteOpenHelper依赖于Context对象,但是基于ui......
  • Python:Nunmpy中的meshgrid函数
    1numpy.meshgrid()官方文档中的作用是从坐标向量中返回坐标矩阵,也就是生成网格点坐标矩阵。Parameters:*xi:array_like数组x1,x2,...,xn,1-D维数组,表示网格的坐标。......
  • CF244A Dividing Orange 题解
    Description有\(n\timesk\)个橘子,\(k\)个小朋友每人拿\(n\)个,但是每个人都指定了一个橘子\(a_i\),分配时必须要把\(a_i\)给第\(i\)个小朋友,求任一分配方案。So......
  • 无限使用IDEA等JetBrains软件
    背景此前已更新过一篇激活JetBrains软件的文章,但由于仅支持2021.2之前的版本,且仅有30天有效期,到期后需要重启软件。因此再更一篇博文,将有效期激活到2099年。实现下载jar......
  • JDBC7 - 批量插入
    批量插入packagecom.atguigu.api.preparedStatement;importorg.junit.Test;importjava.sql.*;publicclassPSOtherPart{//使用普通循环插入10000条数......
  • JDBC6 - 主键回显
    主键回显只发生在插入数据时,返回插入的数据在数据库中自增长的主键值packagecom.atguigu.api.preparedStatement;importorg.junit.Test;importjava.sql.*;publi......
  • Tiup离线安装TIDB集群4.0.16版本
    环境:centos7.6中控机:8.213.8.25(内网)可用服务器8.213.8.25-8.213.8.29一、准备TiUP离线组件包方法1:外网下载离线安装包拷贝进内网服务器在TiDB官网下载页面选择对应......
  • JDBC5 - API总结
    preparedStatement使用方式总结1.注册驱动2.获取连接3.编写SQL语句结构4.创建preparedStatement并且传入SQL语句结构5.占位符赋值6.发送SQL语句,并获取结果7.结果......