spring JdbcTemplate批量插入 怎么获得数据库自动增长的id
1个回答
展开全部
通过sql语句实现,新增一个序列,假设为xx_seq,你的sql语句把那列直接写成xx_seq.nextval就行了。
拿oracle为例,其它的数据库应该都差不多
新增序列例:
CREATE SEQUENCE student_seq
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10;
假设你要插入的表student有两列,一列为id,一列为name。那么你的sql语句就可以写成insert into student values (student_seq .nextval, ?); 也就是说你用jdbcTemplate只需要设置name的值就行了,id是通过调用序列来插入的(即交给oracle解决)。
拿oracle为例,其它的数据库应该都差不多
新增序列例:
CREATE SEQUENCE student_seq
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10;
假设你要插入的表student有两列,一列为id,一列为name。那么你的sql语句就可以写成insert into student values (student_seq .nextval, ?); 也就是说你用jdbcTemplate只需要设置name的值就行了,id是通过调用序列来插入的(即交给oracle解决)。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询