我创建了一个程序来判断一年是否是闰年。我从一个匿名区块调用我的程序。 这是我的代码
declare
x number;
y number;
procedure leap(z IN number) IS
BEGIN
if(z%400=0)
then
dbms_output.put_line('leap year');
elsif(z%100=0)
then
dbms_output.put_line('not a leap year');
elsif(z%4=0)
then
dbms_output.put_line('leap year');
else
dbms_output.put_line('Not a year');
end if;
END;
BEGIN
y:=&y;
p1(y);
END;
我收到这些错误: PLS-00103:当遇到以下任何一种情况时遇到符号“400”:
型 ORA-06550:第9行,第9栏: PLS-00103:当遇到以下情况之一时遇到符号“100”:
型 ORA-06550:第12行第9栏: PLS-00103:遇到以下其中一项时遇到符号“4”:
型 06550. 00000 - “行%s,列%s:\ n%s” *原因:通常是PL / SQL编译错误。 *操作:
答案 0 :(得分:0)
试试这个:
declare
x number;
y number;
procedure leap(z IN number) IS
BEGIN
if REMAINDER(z,400)=0
then
dbms_output.put_line('leap year');
elsif REMAINDER(z,100)=0
then
dbms_output.put_line('not a leap year');
elsif REMAINDER(z,4)=0
then
dbms_output.put_line('leap year');
else
dbms_output.put_line('Not a year');
end if;
END;
BEGIN
y:=&y;
p1(y);
END;