[英]Oracle PL/SQL Error PLS-00103
This is the code: 这是代码:
set serveroutput ON;
DECLARE
id_emp NUMBER := '&EmpleadoNumero';
n_commission DOUBLE;
BEGIN
SELECT i.id,
Decode(i.commission_pct, SUM(i.commission_pct) > 100000,
i.commission_pct + ( i.commission_pct * .10 ),
SUM(i.commission_pct) > 100000
AND SUM(i.commission_pct) < 1000000,
i.commission_pct + ( i.commission_pct * .15 ),
SUM(i.commission_pct) > 1000000,
i.commission_pct + ( i.commission_pct * .20 ),
0) N_Commission
FROM s_emp i
inner join s_ord S
ON ( i.id = S.sales_rep_id );
INTO id_emp, n_commission;
dbms_output.Put_line('El empleado numero: '
|| idemp
|| ' tiene una nueva comisión de: '
|| n_comision);
END;
And when I try it out I get: ORA-06550 PLS-00103 error 当我尝试时,我得到:ORA-06550 PLS-00103错误
Your select syntax is wrong, it should be 您选择的语法错误,应该是
SELECT i.id,
Decode(i.commission_pct, SUM(i.commission_pct) > 100000,
i.commission_pct + ( i.commission_pct * .10 ),
SUM(i.commission_pct) > 100000
AND SUM(i.commission_pct) < 1000000,
i.commission_pct + ( i.commission_pct * .15 ),
SUM(i.commission_pct) > 1000000,
i.commission_pct + ( i.commission_pct * .20 ),
0) N_Commission
INTO id_emp, n_commission
FROM s_emp i
inner join s_ord S
ON ( i.id = S.sales_rep_id );
note that the into clause comes before FROM clause and you're terminating the statement with a semicolon in the FROM clause itself 请注意,into子句位于FROM子句之前,并且您要在FROM子句本身中以分号终止该语句
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.