oracle 00600 存储过程,编译存储过程遇到ORA-00600错误

上周写了个很普通的存储过程,就是一条insert into select的语句,结果单独拿出来可以正常执行,放到存储过程里面就出现报错,

Compilation errors for PACKAGE BODY DMS_DF.PKG_LINELOSS_IIIARR

Error:PL/SQL: ORA-00600: 内部错误代码, 参数: [qctcte1], [0], [], [], [], [], [], []Line: 708

Text: insert into R_M_LINELOSS_DIVVOL(VOLGRADE,INPUTPOWER,OUTPUTPOWER,LOSSPOWERL,MONTH,DSID,DSNAME)

Error: PL/SQL: SQL Statement ignored

Line: 708

Text: insert into R_M_LINELOSS_DIVVOL(VOLGRADE,INPUTPOWER,OUTPUTPOWER,LOSSPOWERL,MONTH,DSID,DSNAME)

这条insert 语句是这样的:

insert into R_M_LINELOSS_DIVVOL(VOLGRADE,INPUTPOWER,OUTPUTPOWER,LOSSPOWERL,MONTH,DSID,DSNAME)

select tmp2.code VOLGRADE, --电压等级

nvl(t1.INPUTPOWER,0) INPUTPOWER,  --输入电量

nvl(t1.OUTPUTPOWER,0) OUTPUTPOWER,  --输出电量

nvl(t1.LOSSPOWERL,0) LOSSPOWERL,  --线路损失电量

to_char(add_months(to_date('2012-02','yyyy-mm'),1),'yyyy-mm') MONTH,  --线损月份(YYYY-MM)

tmp2.id DSID,   --所属地市ID

tmp2.name DSNAME   --所属地市名称

from (select a1.voltagelevel,

sum(r2.INPUTPOWER) INPUTPOWER,  --输入电量

sum(r2.OUTPUTPOWER) OUTPUTPOWER,  --输出电量

sum(r2.LOSSPOWERL) LOSSPOWERL,  --线路损失电量

r2.id  DSID      --所属地市ID

from att_pd_line a1,ATT_PD_LINE_PARA a2,

(select r1.lineid,r1.INPUTPOWER,r1.OUTPUTPOWER,r1.LOSSPOWERL,s2.id,s2.name

from R_M_LINELOSS_DIVILINE r1

right join (select s1.id,s1.name,connect_by_root(s1.id) rootid

from SYS_DEPARTMENT s1

where connect_by_isleaf=1

connect by prior s1.supdep =s1.id

and s1.dlevel = 5

order siblings by s1.id) s2

on r1.gdsid = s2.rootid

where r1.month = to_char(add_months(to_date('2012-02','yyyy-mm'),1),'yyyy-mm')) r2

where a1.id = a2.attid

and a1.id = r2.lineid

and a2.state = 0

and a1.voltagelevel is not null

group by r2.id,r2.name,a1.VOLTAGELEVEL) t1  --state 0:正常;1:删除

right join (select s.id,s.name,m.code

from (select id,name from SYS_DEPARTMENT where dlevel = 5) s,

(select code from MODEL_MCD_PUBCODE where groupcode=1002) m) tmp2

on tmp2.id = t1.dsid and tmp2.code = t1.voltagelevel;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值