插入数据返回自增id及插入更新二合一

原文https://blog.csdn.net/dumzp13/article/details/50984413

JDBC:

con.setAutoCommit(false);
String sql = "INSERT INTO VIN(vin) VALUES(?)";
PreparedStatement ps = con.prepareStatement(sql,new String[]{"id"}); //第二个参数是要获取的字段名数组
ps.setString(1,"LVXMAZAATEST");
ps.executeUpdate(); 
ResultSet rs = ps.getGeneratedKeys(); //此方法会返回一个结果集
rs.next(); //调用结果集
int deptno = rs.getInt(1); //通过列数获取部门编号。
con.commit();

SQL更新二合一

ID不跳变

insert into mongorecvlst(day,vinid,num1,num2) value(9483,2,10,10) ON DUPLICATE KEY UPDATE num=num+VALUES(num),num2=num2+VALUES(num2);

ID跳变

不存在插入,存在删除再插入

replace into mongorecvlst(day,vinid,num1,num2) value(9483,2,10,10)

原文地址:https://www.cnblogs.com/anhaogoon/p/9460382.html

时间: 2024-07-29 16:06:47

插入数据返回自增id及插入更新二合一的相关文章

Postgresql插入数据返回自增id

Postgresql插入数据返回自增id 一.设置自增id 新建字段  并且将字段属性设置为serial 二.插入返回 insert语句增加return 例如:insert into point(pointtype,pointx,pointy,pointval)values(1,2,3,4) RETURNING id;

Mybatis配置插入数据返回主键ID

需要在insert方法中添加 <insert id="insertSelective" parameterType="com.midou.ott.model.MDActivity" useGeneratedKeys="true" keyProperty="id"> 加上上面红色部分,keyProperty中的id,是MDActivity对象的中的Id 使用时直接从MDActivity对象中获取到ID

Mybatis插入数据返回主键ID

<insert id="add" parameterType="com.dsa.core.base.model.ProductSync">        insert into tm_sync_product(            <if test="productId!=null">product_id,</if>            <if test="mainLimit!=null&q

mysql插入数据后返回自增ID的方法

mysql插入数据后返回自增ID的方法 mysql和oracle插入的时候有一个很大的区别是,oracle支持序列做id,mysql本身有一个列可以做自增长字段,mysql在插入一条数据后,如何能获得到这个自增id的值呢? 方法一:是使用last_insert_id mysql> SELECT LAST_INSERT_ID(); 产生的ID 每次连接后保存在服务器中.这意味着函数向一个给定客户端返回的值是该客户端产生对影响AUTO_INCREMENT列的最新语句第一个 AUTO_INCREMEN

mybatis 插入数据返回ID

hibernate中插入数据后会返回插入的数据的ID,mybatis要使用此功能需要在配置文件中显示声明两个属性即可: mybatis 插入数据返回ID,布布扣,bubuko.com

数据库插入数据返回当前主键ID值方法

环境:SQL Anywhere 9.0.2 创建语句: create table test(    id int primary key identity(1,1),    name varchar(20)) 当我们插入一条数据的时候,我们很多时候都想立刻获取当前插入的主键值返回以做它用.我们通常的做法有如下几种: 1. 先 select max(id) +1 ,然后将+1后的值作为主键插入数据库: 2. 使用特定数据库的 auto_increment 特性,在插入数据完成后,使用 select

解决getJdbcTemplate往oracle数据库中插入数据返回主键出错问题

我们使用Spring中的JdbcDaoSupport往Mysql中插入数据并返回主键代码,我们使用的mysql数据库,主键在数据库中设置为自增长:该类继承自JdbcDaoSupport,所以能直接使用getJdbcTemplate() public int saveUser(String userName,int age,String password){ getJdbcTemplate().update(new PreparedStatementCreator() { public Prepa

Mybatis+Mysql插入数据库返回自增主键id值的三种方法

一.场景: 插入数据库的值需要立即得到返回的主键id进行下一步程序操作 二.解决方法: 第一种:使用通用mapper的插入方法 Mapper.insertSelective(record): 此方法:插入一条数据,只插入不为null的字段,不会影响有默认值的字段支持Oracle序列,UUID,类似Mysql的INDENTITY自动增长(自动回写)优先使用传入的参数值,参数值空时,才会使用序列.UUID,自动增长 controller的实际应用:使用方法id会直接将映射到参数的实体上使用时直接使用

MySql 插入数据返回数据的Id值

insert into addeditemgroup(addeditemgroupname) value('11') ; select @@IDENTITY  as id; 返回最新的Id: