oracle解决insert all 批量查询,只能获取到一个序列的问题!有时候需要做批量insert,恰好遇到数据库主键是序列,这时候我们在insert all中获取nextval,总是获取到一个,这时候,会报错主键冲突,这时候如何解决这个问题?方法一:数据库建触发器trigger语法create or replace trigger 触发器名字 before insert on 表名 for each rowbegin select XXX.nextval into :new.ID from dual;end;此方法需要获取数据库较高级权限,一般线上可能无这么大的权限方法二:数据库建函数,然后insert all获取序列时候调函数语法create or replace function 函数名 return number is result number;beginselect XXX.nextval into result from dual;return result;end;然后insert all的时候,在调用获取下一个序列直接调用此函数!