我正在尝试将多条记录插入表中,但对每条记录使用相同的序列值。
这类似于:如何使用序列值将多行插入到 oracle 中?但是给出的答案插入了多个不同的序列号,我希望多个记录使用相同的序列号。
create table test1 (
col_a number,
col_b number
);
commit;
create sequence test_seq increment by 1 start with 2 minvalue 1 nocycle nocache noorder;
commit;
insert into test1 (col_a, col_b)
select a.object_id, test_seq.nextval from (
select object_id from all_objects where rownum < 5
) a;
commit;
上面的问题是它检索并插入多个(不同的)“test_seq.nextval”值,我希望为每一行插入相同的值。
这甚至可以在直接 sql 中而不使用触发器(或多个 sql 语句)吗?相关问题的答案之一暗示它可能不是,但我并不清楚。
谢谢。
如果有帮助,我正在使用 Oracle 11g。