这是一个代码,用于比较三个数字并打印出最大的值。
declare
n1 number(2);
n2 number(2);
n3 number(2);
begin
n1:=&n1;
n2:=&n2:
n3:=&n3;
if n1>n2 and n1>n3 then
dbms_output.put_line('The greatest number is n1 '||n1);
else if n2>n1 and n2>n3 then
dbms_output.put_line('The greatest number is n2 '||n2);
else
dbms_output.put_line('The greatest number is n3 '||n3);
end if;
end;
/当我试图在oracle中运行这个pl sql代码时,它说:
old 6: n1:=&n1;
new 6: n1:=4;
Enter value for n2: 5
old 7: n2:=&n2:
new 7: n2:=5:
Enter value for n3: 6
old 8: n3:=&n3;
new 8: n3:=6;
SP2-0552: Bind variable "N3" not declared.,你能告诉我哪里出了问题吗?我很感激
发布于 2021-05-25 13:35:11
您有3个错误(键入):
开始声明variables.
n2:=&n2:之前需要DECLARE关键字的elsif (或者,如果您想保留else if,则需要第二个end if;来终止第二个if语句)DECLARE
n1 number(2);
n2 number(2);
n3 number(2);
begin
n1:=&n1;
n2:=&n2;
n3:=&n3;
if n1>n2 and n1>n3 then
dbms_output.put_line('The greatest number is n1 '||n1);
elsif n2>n1 and n2>n3 then
dbms_output.put_line('The greatest number is n2 '||n2);
else
dbms_output.put_line('The greatest number is n3 '||n3);
end if;
end;
/https://stackoverflow.com/questions/67689062
复制相似问题