Oracle 将一个表中的数据插入到另一个表中
1.(前提条件)有序列
-- 创建一个序列
create sequence S_LCJSRYGLB
minvalue 0
maxvalue 999999999999999999
start with 0
increment by 1
nocache;
2.含有序列-从一个表中查询再插入数据
insert into lcjsryglb(lcjsryglid,lcjsbmbid, rybossid, ryid)
(select s_Lcjsryglb.Nextval,1, t.BOSSID,t.id from V_userinfo t where t.BOSSID in(select w.bossid from dwjbxxb w where w.jyjsbmid=839600002));
s_Lcjsryglb.Nextval 查询下一个序列
3.直接插入除序列不同其他都相同的序列
insert into lcjsryglb(lcjsryglid,lcjsbmbid, rybossid, ryid)
(lcjsryglid.Nextval,1,12,15));
----
1.创建新增的存储过程
CREATE OR REPLACE PROCEDURE LCJSRYGLB_Insert
(
PLCJSRYGLID OUT NUMBER,
PLCJSBMBID IN NUMBER,
PRYBOSSID IN NUMBER,
PRYID IN NUMBER
)
IS
BEGIN
INSERT INTO LCJSRYGLB
(
LCJSRYGLID,
LCJSBMBID,
RYBOSSID,
RYID
)
VALUES
(
S_LCJSRYGLB.NEXTVAL,
PLCJSBMBID,
PRYBOSSID,
PRYID
);
SELECT S_LCJSRYGLB.CURRVAL INTO PLCJSRYGLID FROM DUAL;
END LCJSRYGLB_Insert;
2.编辑的存储过程
![](https://www.cnblogs.com/images/cnblogs_com/-hao/1352120/o_zfbAndWx.jpg)
您的资助是我最大的动力!
金额随意,欢迎来赏!