把倒数第二个end;去掉 然后insert into 后面的第一个(select的(去掉 也就是 insert into table() select * from table; 这样的写法
create or replace procedure test1 is begin insert into lj_串号变更 (稽核人, 受理人, 用户名称, 号码, 号码状态, 号码受理时间, 串号, 机型, 号码录入状态, 录入时间, 录入订单号, gxdate) select b.jhr 稽核人,b.bm 部门,b.empee_name 受理人,c.prod_inst_name 用户名称,c.acc_nbr 号码,c.prod_inst_id,c.status_cd 号码状态,c.create_date 号码受理时间, a.res_inst_nbr 串号,d.mkt_res_name 机型,to_char(a.res_prd_inst_stas,'9999') 号码录入状态,a.mod_date 录入时间,a.order_id 录入订单号,to_char(sysdate, 'yyyymmdd') from crm1.tb_prd_res_prd_inst_551@ldc2ch a, LW_LJ_EMPEE b, crm20_ins1.prod_inst_551@ldc2ch c, crmshare1.tb_mkt_res@ldc2ch d, crm20_ins1.customer_order_551@ldc2ch e where e.staff_id=b.empee_id and a.obj_inst_id=c.prod_inst_id(+) and a.order_id=e.cust_order_id and a.res_id=d.mkt_res_id and TRUNC(a.mod_date)=TRUNC(sysdate-1) ; END ; / -- 调用过程测试 begin test1; end; 我改成这样了,居然还提示上述错误!!
CREATE OR REPLACE PROCEDURE PROC_T_BT_REPORT_Test ISBEGIN begin --notice_sub_no 字段number 类型 -- insert into define_test (notice_sub_no) (select 1 from dual); --执行结果:正确插入数据 insert into define_test (notice_sub_no) (select 'a' from dual); --执行结果:输出执行报错 commit; EXCEPTION WHEN OTHERS THEN dbms_output.put_line('执行报错!'); END;END PROC_T_BT_REPORT_Test;
然后insert into 后面的第一个(select的(去掉
也就是
insert into table()
select * from table;
这样的写法
is
begin
insert into lj_串号变更
(稽核人,
受理人,
用户名称,
号码,
号码状态,
号码受理时间,
串号,
机型,
号码录入状态,
录入时间,
录入订单号,
gxdate)
select b.jhr 稽核人,b.bm 部门,b.empee_name 受理人,c.prod_inst_name 用户名称,c.acc_nbr 号码,c.prod_inst_id,c.status_cd 号码状态,c.create_date 号码受理时间,
a.res_inst_nbr 串号,d.mkt_res_name 机型,to_char(a.res_prd_inst_stas,'9999') 号码录入状态,a.mod_date 录入时间,a.order_id 录入订单号,to_char(sysdate, 'yyyymmdd')
from crm1.tb_prd_res_prd_inst_551@ldc2ch a,
LW_LJ_EMPEE b,
crm20_ins1.prod_inst_551@ldc2ch c,
crmshare1.tb_mkt_res@ldc2ch d,
crm20_ins1.customer_order_551@ldc2ch e
where e.staff_id=b.empee_id
and a.obj_inst_id=c.prod_inst_id(+)
and a.order_id=e.cust_order_id
and a.res_id=d.mkt_res_id
and TRUNC(a.mod_date)=TRUNC(sysdate-1)
;
END ;
/
-- 调用过程测试
begin
test1;
end;
我改成这样了,居然还提示上述错误!!
begin
--notice_sub_no 字段number 类型
-- insert into define_test (notice_sub_no) (select 1 from dual); --执行结果:正确插入数据
insert into define_test (notice_sub_no) (select 'a' from dual); --执行结果:输出执行报错
commit;
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line('执行报错!');
END;END PROC_T_BT_REPORT_Test;