自问自答吧,这也是其他网站的兄弟们给的,以嗣分享
SQL> create table TJDWJBXX1 (BIANH varchar2(20),MINGXH varchar2(20), DANWMC varchar2(20), TIJMC varchar2(20));Table createdSQL> create table TJSFXM (BAINH varchar2(20), MINGC varchar2(20), DANJ number(10,2));Table createdSQL> insert into TJSFXM values ('000002' ,'一般检查', 10);1 row insertedSQL> create table XYCFMX (BIANH varchar2(20),MINGC varchar2(20), ZHIXKS varchar2(20));Table createdSQL> insert into XYCFMX values ('000002', '视力检查', '五官科');1 row insertedSQL> insert into XYCFMX values ('000002', '血型检查', '检验科');1 row insertedSQL> insert into XYCFMX values ('000002', '钡餐', '放射科');1 row insertedSQL> create table TJDWJZD (DANWMC varchar2(20), DWMCXH varchar2(20),XIANGMXH varchar2(20),TIJXM varchar2(20),
2 TIJXMBH varchar2(20),ZHIXKS varchar2(20));Table createdSQL> create or replace trigger tr_TJDWJBXX1 before insert on TJDWJBXX1
2 for each row
3 begin
4 for x in
5 (select decode(length(rownum),1,'0'||rownum,to_char(rownum)) rn,BIANH, MINGC, ZHIXKS
6 from XYCFMX
7 where BIANH = (select bianh from TJSFXM where MINGC = :new.TIJMC)) loop
8 insert into TJDWJZD(DANWMC, DWMCXH, XIANGMXH, TIJXMBH, TIJXM, ZHIXKS)
9 Values (:new.DANWMC,:new.MINGXH,x.rn,x.BIANH, x.MINGC, x.ZHIXKS);
10 end loop;
11 end tr_TJDWJBXX1;
12 /Trigger createdSQL> insert into TJDWJBXX1 values ('00000001', '012', '教育局', '一般检查');1 row insertedSQL> commit;
Commit completeSQL> select * from TJSFXM;BAINH MINGC DANJ
-------------------- -------------------- ------------
000002 一般检查 10.00SQL> select * from TJDWJZD;DANWMC DWMCXH XIANGMXH TIJXM TIJXMBH ZHIXKS
-------------------- -------------------- -------------------- -------------------- -------------------- --------------------
教育局 012 01 视力检查 000002 五官科
教育局 012 02 血型检查 000002 检验科
教育局 012 03 钡餐 000002 放射科
SQL> create table TJDWJBXX1 (BIANH varchar2(20),MINGXH varchar2(20), DANWMC varchar2(20), TIJMC varchar2(20));Table createdSQL> create table TJSFXM (BAINH varchar2(20), MINGC varchar2(20), DANJ number(10,2));Table createdSQL> insert into TJSFXM values ('000002' ,'一般检查', 10);1 row insertedSQL> create table XYCFMX (BIANH varchar2(20),MINGC varchar2(20), ZHIXKS varchar2(20));Table createdSQL> insert into XYCFMX values ('000002', '视力检查', '五官科');1 row insertedSQL> insert into XYCFMX values ('000002', '血型检查', '检验科');1 row insertedSQL> insert into XYCFMX values ('000002', '钡餐', '放射科');1 row insertedSQL> create table TJDWJZD (DANWMC varchar2(20), DWMCXH varchar2(20),XIANGMXH varchar2(20),TIJXM varchar2(20),
2 TIJXMBH varchar2(20),ZHIXKS varchar2(20));Table createdSQL> create or replace trigger tr_TJDWJBXX1 before insert on TJDWJBXX1
2 for each row
3 begin
4 for x in
5 (select decode(length(rownum),1,'0'||rownum,to_char(rownum)) rn,BIANH, MINGC, ZHIXKS
6 from XYCFMX
7 where BIANH = (select bianh from TJSFXM where MINGC = :new.TIJMC)) loop
8 insert into TJDWJZD(DANWMC, DWMCXH, XIANGMXH, TIJXMBH, TIJXM, ZHIXKS)
9 Values (:new.DANWMC,:new.MINGXH,x.rn,x.BIANH, x.MINGC, x.ZHIXKS);
10 end loop;
11 end tr_TJDWJBXX1;
12 /Trigger createdSQL> insert into TJDWJBXX1 values ('00000001', '012', '教育局', '一般检查');1 row insertedSQL> commit;
Commit completeSQL> select * from TJSFXM;BAINH MINGC DANJ
-------------------- -------------------- ------------
000002 一般检查 10.00SQL> select * from TJDWJZD;DANWMC DWMCXH XIANGMXH TIJXM TIJXMBH ZHIXKS
-------------------- -------------------- -------------------- -------------------- -------------------- --------------------
教育局 012 01 视力检查 000002 五官科
教育局 012 02 血型检查 000002 检验科
教育局 012 03 钡餐 000002 放射科
解决方案 »
- 关于数据库的关闭
- 高手请进!oracle 查询
- ORACLE 死机问题,请高手帮忙
- sql语句排序,字母排头
- 如何在新装的oracle10g中恢复以前的完全备份
- 提示错误:ORA-01719: OR 或 IN 操作数中不允许外部连接运算符 (+)
- 请教sqlserver2000的备份数据库文件如何导入到oracle
- 关于存储过程的问题,急,在线等!!!
- 我使用ORACLE8I,请问怎么在PLSQL DEVELOPER工具中编辑物化视图?别人的物化视图就只能够看见一个TABLE的外表,怎么看他的源码。我刚接触
- 请问:如何修改Oracle的字符集,谢谢了?
- 求oracle 10g中还原数据库
- PL/SQL备份
现在都没结贴,估计lz还在饿着呢。
哪位好心人帮下忙吧。