第一种
insert into userapplyRecord (id,userid,type,applyId,createUser,createDate)
select S_USERAPPLYRECORD.NEXTVAL,2352,'moduleSetUp',applyid,'guishan',to_date('2019-04-09 10:18:16','yyyy-mm-dd hh24:mi:ss') from
(
select 1 as applyid from dual
union
select 3 as applyid from dual
)
第二种
创建序列
CREATE SEQUENCE S_USERAPPLYRECORD
MINVALUE 1
MAXVALUE 9999999999
START WITH 1
INCREMENT BY 1 CACHE 20;
为序列创建触发事件
create or replace trigger userapplyRecord_insert --触发器名字
before insert on userapplyRecord --before 表示在数据库动作之前触发器执行,after:表示在数据库动作之后触发器执行 触发事件:指明哪些数据库动作会触发此触发器:insert delete update
for each row --对表的每一行触发器执行一次 如果没有这一选项,则只对整个表执行一次。
begin
select S_USERAPPLYRECORD.NEXTVAL into :new.id from dual;
end;
执行批量插入sql语句
INSERT ALL INTO userapplyRecord (id,userid,type,applyId,createUser,createDate)
VALUES (S_USERAPPLYRECORD.NEXTVAL ,2352,'moduleSetUp',1,'guishan',to_date('2019-04-09 10:18:16','yyyy-mm-dd hh24:mi:ss'))
INTO userapplyRecord (id,userid,type,applyId,createUser,createDate)
VALUES (S_USERAPPLYRECORD.NEXTVAL,2352,'moduleSetUp',1,'guishan',to_date('2019-04-09 10:18:16','yyyy-mm-dd hh24:mi:ss'))
SELECT 1 FROM DUAL;