oracle数据库 一主表 A 一子表 B 主表id自动增长,怎么根据A表ID 插入B表多条数据? 求sql

INSERT INTO MP_EXP_REQ_LINES (id,name) VALUES (主表id的值咋获取,张三)主表id的值为自动增长

可以将A表的ID做成一个序列,添加的时候将序列的值取出来,供A,B表使用.
Declare
seqval NUMBER(10);
BEGIN
select seq_table.nextval into seqval from dual;
insert into A(id,) values (seqval);
INSERT INTO MP_EXP_REQ_LINES (id,name) VALUES (seqval,张三)
--这样就保证了与A表唯一id的一致性!
END;追问

这个可以在webservice里面调用的到么?代码

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-13
写个触发器
CREATE OR REPLACE TRIGGER t_t1_insert
BEFORE INSERT ON t_t1
FOR EACH ROW
declare

v_line number;
BEGIN
v_line := to_char(new.id);

if(v_line<1) then
dbms_output.put_line('请输入>=1的整数');
end if;

for v in 1..p_line loop
INSERT INTO MP_EXP_REQ_LINES (id,name) VALUES (new.id,new.name);
end loop;

END t_t1_insert;
第2个回答  2011-06-13
b表有个字段它的值为a表的id,可以有多条数据啊。
相似回答