嘿,我想知道如果if
在 PL/SQL 中触发语句,是否可以接收第二个输入?这是我现在拥有的代码:
set serveroutput on
accept v_enter prompt "Enter employees salary: "
declare
v_emppay number(10,0):='&v_enter';
v_numemps number (3,0):='&v_enter2';
v_jobsec varchar2(40);
v_jobname emp.job%type;
begin
select job into v_jobname
from emp
where ename = 'ADAMS';
if v_emppay > 2000 and v_jobname = 'PRESIDENT' then
v_jobsec := 'Safe';
elsif
v_emppay > 2000 and v_jobname <> 'MANAGER' then
v_jobsec := 'Not Safe';
elsif
v_emppay > 2000 and v_jobname = 'MANAGER' then
accept v_enter2 prompt "How many underlings? "
if v_numemps < 3 then
v_jobsec := 'Not Safe'
else
v_jobsec := 'Safe'
end if
elsif
v_emppay > 1000 and v_jobname <> 'MANAGER' then
v_jobsec := 'Safe';
else
v_jobsec := 'Safe';
end if;
dbms_output.put_line ('You are '||v_jobsec);
end;
截至目前,我被要求插入(没有提示)一个值,无论该人是否是经理,如果他是经理,则程序会出错。这是我使用 PL/SQL 的第二天,所以我确定我的某些语法是错误的,但截至目前我看不出在哪里。提前致谢。